Raspbian Package Auto-Building

Build log for groonga (6.1.5-1+deb9u1) on armhf

groonga6.1.5-1+deb9u1armhf → 2019-09-07 18:53:42

sbuild (Debian sbuild) 0.71.0 (24 Aug 2016) on testwandboard

+==============================================================================+
| groonga 6.1.5-1+deb9u1 (armhf)               Sat, 07 Sep 2019 18:09:27 +0000 |
+==============================================================================+

Package: groonga
Version: 6.1.5-1+deb9u1
Source Version: 6.1.5-1+deb9u1
Distribution: stretch-staging
Machine Architecture: armhf
Host Architecture: armhf
Build Architecture: armhf

I: NOTICE: Log filtering will replace 'var/lib/schroot/mount/stretch-staging-armhf-sbuild-5ba450ad-6d12-42e5-a21b-767468ea5c9c' with '<<CHROOT>>'

+------------------------------------------------------------------------------+
| Update chroot                                                                |
+------------------------------------------------------------------------------+

Get:1 http://172.17.0.1/private stretch-staging InRelease [11.3 kB]
Get:2 http://172.17.0.1/private stretch-staging/main Sources [9722 kB]
Get:3 http://172.17.0.1/private stretch-staging/main armhf Packages [11.7 MB]
Fetched 21.4 MB in 28s (764 kB/s)
Reading package lists...
W: No sandbox user '_apt' on the system, can not drop privileges

+------------------------------------------------------------------------------+
| Fetch source files                                                           |
+------------------------------------------------------------------------------+


Check APT
---------

Checking available source versions...

Download source files with APT
------------------------------

Reading package lists...
Need to get 14.3 MB of source archives.
Get:1 http://172.17.0.1/private stretch-staging/main groonga 6.1.5-1+deb9u1 (dsc) [3096 B]
Get:2 http://172.17.0.1/private stretch-staging/main groonga 6.1.5-1+deb9u1 (tar) [14.2 MB]
Get:3 http://172.17.0.1/private stretch-staging/main groonga 6.1.5-1+deb9u1 (asc) [195 B]
Get:4 http://172.17.0.1/private stretch-staging/main groonga 6.1.5-1+deb9u1 (diff) [95.6 kB]
Fetched 14.3 MB in 4s (3020 kB/s)
Download complete and in download only mode
I: NOTICE: Log filtering will replace 'build/groonga-LYIUaH/groonga-6.1.5' with '<<PKGBUILDDIR>>'
I: NOTICE: Log filtering will replace 'build/groonga-LYIUaH' with '<<BUILDDIR>>'

+------------------------------------------------------------------------------+
| Install build-essential                                                      |
+------------------------------------------------------------------------------+


Setup apt archive
-----------------

Merged Build-Depends: build-essential, fakeroot
Filtered Build-Depends: build-essential, fakeroot
dpkg-deb: building package 'sbuild-build-depends-core-dummy' in '/<<BUILDDIR>>/resolver-PXlq3s/apt_archive/sbuild-build-depends-core-dummy.deb'.
dpkg-scanpackages: warning: Packages in archive but missing from override file:
dpkg-scanpackages: warning:   sbuild-build-depends-core-dummy
dpkg-scanpackages: info: Wrote 1 entries to output Packages file.
gpg: keybox '/<<BUILDDIR>>/resolver-PXlq3s/gpg/pubring.kbx' created
gpg: /<<BUILDDIR>>/resolver-PXlq3s/gpg/trustdb.gpg: trustdb created
gpg: key 35506D9A48F77B2E: public key "Sbuild Signer (Sbuild Build Dependency Archive Key) <buildd-tools-devel@lists.alioth.debian.org>" imported
gpg: Total number processed: 1
gpg:               imported: 1
gpg: key 35506D9A48F77B2E: "Sbuild Signer (Sbuild Build Dependency Archive Key) <buildd-tools-devel@lists.alioth.debian.org>" not changed
gpg: key 35506D9A48F77B2E: secret key imported
gpg: Total number processed: 1
gpg:              unchanged: 1
gpg:       secret keys read: 1
gpg:   secret keys imported: 1
gpg: using "Sbuild Signer" as default secret key for signing
Ign:1 copy:/<<BUILDDIR>>/resolver-PXlq3s/apt_archive ./ InRelease
Get:2 copy:/<<BUILDDIR>>/resolver-PXlq3s/apt_archive ./ Release [957 B]
Get:3 copy:/<<BUILDDIR>>/resolver-PXlq3s/apt_archive ./ Release.gpg [370 B]
Get:4 copy:/<<BUILDDIR>>/resolver-PXlq3s/apt_archive ./ Sources [349 B]
Get:5 copy:/<<BUILDDIR>>/resolver-PXlq3s/apt_archive ./ Packages [432 B]
Fetched 2108 B in 0s (3069 B/s)
Reading package lists...
W: No sandbox user '_apt' on the system, can not drop privileges
Reading package lists...

Install core build dependencies (apt-based resolver)
----------------------------------------------------

Installing build dependencies
Reading package lists...
Building dependency tree...
Reading state information...
The following packages were automatically installed and are no longer required:
  fuse2fs gnupg-l10n kbd libfuse2 manpages netbase psmisc
Use 'apt autoremove' to remove them.
The following NEW packages will be installed:
  sbuild-build-depends-core-dummy
0 upgraded, 1 newly installed, 0 to remove and 63 not upgraded.
Need to get 776 B of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 copy:/<<BUILDDIR>>/resolver-PXlq3s/apt_archive ./ sbuild-build-depends-core-dummy 0.invalid.0 [776 B]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 776 B in 0s (0 B/s)
Selecting previously unselected package sbuild-build-depends-core-dummy.
(Reading database ... 13276 files and directories currently installed.)
Preparing to unpack .../sbuild-build-depends-core-dummy_0.invalid.0_armhf.deb ...
Unpacking sbuild-build-depends-core-dummy (0.invalid.0) ...
Setting up sbuild-build-depends-core-dummy (0.invalid.0) ...
W: No sandbox user '_apt' on the system, can not drop privileges

+------------------------------------------------------------------------------+
| Check architectures                                                          |
+------------------------------------------------------------------------------+

Arch check ok (armhf included in any all)

+------------------------------------------------------------------------------+
| Install package build dependencies                                           |
+------------------------------------------------------------------------------+


Setup apt archive
-----------------

Merged Build-Depends: debhelper (>= 10), pkg-config, liblz4-dev, zlib1g-dev, libmsgpack-dev, libzmq3-dev | libzmq-dev, libevent-dev, libmecab-dev, libpcre3-dev, libstemmer-dev, libjemalloc-dev, libssl-dev, libzstd-dev
Filtered Build-Depends: debhelper (>= 10), pkg-config, liblz4-dev, zlib1g-dev, libmsgpack-dev, libzmq3-dev, libevent-dev, libmecab-dev, libpcre3-dev, libstemmer-dev, libjemalloc-dev, libssl-dev, libzstd-dev
dpkg-deb: building package 'sbuild-build-depends-groonga-dummy' in '/<<BUILDDIR>>/resolver-PXlq3s/apt_archive/sbuild-build-depends-groonga-dummy.deb'.
dpkg-scanpackages: warning: Packages in archive but missing from override file:
dpkg-scanpackages: warning:   sbuild-build-depends-core-dummy sbuild-build-depends-groonga-dummy
dpkg-scanpackages: info: Wrote 2 entries to output Packages file.
gpg: using "Sbuild Signer" as default secret key for signing
Ign:1 copy:/<<BUILDDIR>>/resolver-PXlq3s/apt_archive ./ InRelease
Get:2 copy:/<<BUILDDIR>>/resolver-PXlq3s/apt_archive ./ Release [963 B]
Get:3 copy:/<<BUILDDIR>>/resolver-PXlq3s/apt_archive ./ Release.gpg [370 B]
Get:4 copy:/<<BUILDDIR>>/resolver-PXlq3s/apt_archive ./ Sources [568 B]
Get:5 copy:/<<BUILDDIR>>/resolver-PXlq3s/apt_archive ./ Packages [644 B]
Fetched 2545 B in 0s (3477 B/s)
Reading package lists...
W: No sandbox user '_apt' on the system, can not drop privileges
Reading package lists...

Install groonga build dependencies (apt-based resolver)
-------------------------------------------------------

Installing build dependencies
Reading package lists...
Building dependency tree...
Reading state information...
The following packages were automatically installed and are no longer required:
  fuse2fs gnupg-l10n kbd libfuse2 manpages netbase psmisc
Use 'apt autoremove' to remove them.
The following additional packages will be installed:
  autoconf automake autopoint autotools-dev bsdmainutils debhelper
  dh-autoreconf dh-strip-nondeterminism file gettext gettext-base groff-base
  intltool-debian libarchive-zip-perl libbsd0 libcroco3 libevent-2.0-5
  libevent-core-2.0-5 libevent-dev libevent-extra-2.0-5 libevent-openssl-2.0-5
  libevent-pthreads-2.0-5 libffi6 libfile-stripnondeterminism-perl
  libglib2.0-0 libicu57 libjemalloc-dev libjemalloc1 liblz4-dev libmagic-mgc
  libmagic1 libmecab-dev libmecab2 libmsgpack-dev libmsgpackc2 libpcre16-3
  libpcre3-dev libpcre32-3 libpcrecpp0v5 libpgm-5.2-0 libpipeline1 libsigsegv2
  libsodium18 libssl-dev libssl1.1 libstemmer-dev libstemmer0d
  libtimedate-perl libtool libunistring0 libxml2 libzmq3-dev libzmq5
  libzstd-dev libzstd1 m4 man-db pkg-config po-debconf zlib1g-dev
Suggested packages:
  autoconf-archive gnu-standards autoconf-doc wamerican | wordlist whois
  vacation dh-make gettext-doc libasprintf-dev libgettextpo-dev groff
  libmsgpack-doc libtool-doc gfortran | fortran95-compiler gcj-jdk m4-doc less
  www-browser libmail-box-perl
Recommended packages:
  curl | wget | lynx-cur libglib2.0-data shared-mime-info xdg-user-dirs
  libssl-doc libltdl-dev xml-core libmail-sendmail-perl
The following NEW packages will be installed:
  autoconf automake autopoint autotools-dev bsdmainutils debhelper
  dh-autoreconf dh-strip-nondeterminism file gettext gettext-base groff-base
  intltool-debian libarchive-zip-perl libbsd0 libcroco3 libevent-2.0-5
  libevent-core-2.0-5 libevent-dev libevent-extra-2.0-5 libevent-openssl-2.0-5
  libevent-pthreads-2.0-5 libffi6 libfile-stripnondeterminism-perl
  libglib2.0-0 libicu57 libjemalloc-dev libjemalloc1 liblz4-dev libmagic-mgc
  libmagic1 libmecab-dev libmecab2 libmsgpack-dev libmsgpackc2 libpcre16-3
  libpcre3-dev libpcre32-3 libpcrecpp0v5 libpgm-5.2-0 libpipeline1 libsigsegv2
  libsodium18 libssl-dev libssl1.1 libstemmer-dev libstemmer0d
  libtimedate-perl libtool libunistring0 libxml2 libzmq3-dev libzmq5
  libzstd-dev libzstd1 m4 man-db pkg-config po-debconf
  sbuild-build-depends-groonga-dummy zlib1g-dev
0 upgraded, 61 newly installed, 0 to remove and 63 not upgraded.
Need to get 25.9 MB/26.0 MB of archives.
After this operation, 93.4 MB of additional disk space will be used.
Get:1 copy:/<<BUILDDIR>>/resolver-PXlq3s/apt_archive ./ sbuild-build-depends-groonga-dummy 0.invalid.0 [852 B]
Get:2 http://172.17.0.1/private stretch-staging/main armhf groff-base armhf 1.22.3-9 [1005 kB]
Get:3 http://172.17.0.1/private stretch-staging/main armhf libbsd0 armhf 0.8.3-1 [89.0 kB]
Get:4 http://172.17.0.1/private stretch-staging/main armhf bsdmainutils armhf 9.0.12+nmu1 [178 kB]
Get:5 http://172.17.0.1/private stretch-staging/main armhf libpipeline1 armhf 1.4.1-2 [23.7 kB]
Get:6 http://172.17.0.1/private stretch-staging/main armhf man-db armhf 2.7.6.1-2 [1014 kB]
Get:7 http://172.17.0.1/private stretch-staging/main armhf libpcrecpp0v5 armhf 2:8.39-3 [149 kB]
Get:8 http://172.17.0.1/private stretch-staging/main armhf libstemmer0d armhf 0+svn585-1 [53.5 kB]
Get:9 http://172.17.0.1/private stretch-staging/main armhf libssl1.1 armhf 1.1.0k-1~deb9u1 [1117 kB]
Get:10 http://172.17.0.1/private stretch-staging/main armhf libmagic-mgc armhf 1:5.30-1+deb9u2 [222 kB]
Get:11 http://172.17.0.1/private stretch-staging/main armhf libmagic1 armhf 1:5.30-1+deb9u2 [105 kB]
Get:12 http://172.17.0.1/private stretch-staging/main armhf file armhf 1:5.30-1+deb9u2 [63.6 kB]
Get:13 http://172.17.0.1/private stretch-staging/main armhf gettext-base armhf 0.19.8.1-2 [116 kB]
Get:14 http://172.17.0.1/private stretch-staging/main armhf libevent-2.0-5 armhf 2.0.21-stable-3 [133 kB]
Get:15 http://172.17.0.1/private stretch-staging/main armhf libicu57 armhf 57.1-6+deb9u2 [7425 kB]
Get:16 http://172.17.0.1/private stretch-staging/main armhf libxml2 armhf 2.9.4+dfsg1-2.2+deb9u2 [806 kB]
Get:17 http://172.17.0.1/private stretch-staging/main armhf libsigsegv2 armhf 2.10-5 [28.4 kB]
Get:18 http://172.17.0.1/private stretch-staging/main armhf m4 armhf 1.4.18-1 [185 kB]
Get:19 http://172.17.0.1/private stretch-staging/main armhf autoconf all 2.69-10 [338 kB]
Get:20 http://172.17.0.1/private stretch-staging/main armhf autotools-dev all 20161112.1 [73.4 kB]
Get:21 http://172.17.0.1/private stretch-staging/main armhf automake all 1:1.15-6 [733 kB]
Get:22 http://172.17.0.1/private stretch-staging/main armhf autopoint all 0.19.8.1-2+deb9u1 [433 kB]
Get:23 http://172.17.0.1/private stretch-staging/main armhf libtool all 2.4.6-2 [545 kB]
Get:24 http://172.17.0.1/private stretch-staging/main armhf dh-autoreconf all 14 [15.9 kB]
Get:25 http://172.17.0.1/private stretch-staging/main armhf libarchive-zip-perl all 1.59-1+deb9u1 [96.2 kB]
Get:26 http://172.17.0.1/private stretch-staging/main armhf libfile-stripnondeterminism-perl all 0.034-1 [16.4 kB]
Get:27 http://172.17.0.1/private stretch-staging/main armhf libtimedate-perl all 2.3000-2 [42.2 kB]
Get:28 http://172.17.0.1/private stretch-staging/main armhf dh-strip-nondeterminism all 0.034-1 [10.5 kB]
Get:29 http://172.17.0.1/private stretch-staging/main armhf libglib2.0-0 armhf 2.50.3-2 [2527 kB]
Get:30 http://172.17.0.1/private stretch-staging/main armhf libcroco3 armhf 0.6.11-3 [131 kB]
Get:31 http://172.17.0.1/private stretch-staging/main armhf libunistring0 armhf 0.9.6+really0.9.3-0.1 [252 kB]
Get:32 http://172.17.0.1/private stretch-staging/main armhf gettext armhf 0.19.8.1-2 [1434 kB]
Get:33 http://172.17.0.1/private stretch-staging/main armhf intltool-debian all 0.35.0+20060710.4 [26.3 kB]
Get:34 http://172.17.0.1/private stretch-staging/main armhf po-debconf all 1.0.20 [247 kB]
Get:35 http://172.17.0.1/private stretch-staging/main armhf debhelper all 10.2.5 [961 kB]
Get:36 http://172.17.0.1/private stretch-staging/main armhf libevent-core-2.0-5 armhf 2.0.21-stable-3 [97.5 kB]
Get:37 http://172.17.0.1/private stretch-staging/main armhf libevent-extra-2.0-5 armhf 2.0.21-stable-3 [81.3 kB]
Get:38 http://172.17.0.1/private stretch-staging/main armhf libevent-pthreads-2.0-5 armhf 2.0.21-stable-3 [43.6 kB]
Get:39 http://172.17.0.1/private stretch-staging/main armhf libevent-openssl-2.0-5 armhf 2.0.21-stable-3 [48.1 kB]
Get:40 http://172.17.0.1/private stretch-staging/main armhf libevent-dev armhf 2.0.21-stable-3 [221 kB]
Get:41 http://172.17.0.1/private stretch-staging/main armhf libmecab2 armhf 0.996-3.1 [218 kB]
Get:42 http://172.17.0.1/private stretch-staging/main armhf libmecab-dev armhf 0.996-3.1 [271 kB]
Get:43 http://172.17.0.1/private stretch-staging/main armhf libpcre16-3 armhf 2:8.39-3 [235 kB]
Get:44 http://172.17.0.1/private stretch-staging/main armhf libpcre32-3 armhf 2:8.39-3 [227 kB]
Get:45 http://172.17.0.1/private stretch-staging/main armhf libpcre3-dev armhf 2:8.39-3 [565 kB]
Get:46 http://172.17.0.1/private stretch-staging/main armhf libpgm-5.2-0 armhf 5.2.122~dfsg-2 [153 kB]
Get:47 http://172.17.0.1/private stretch-staging/main armhf libsodium18 armhf 1.0.11-2 [146 kB]
Get:48 http://172.17.0.1/private stretch-staging/main armhf libssl-dev armhf 1.1.0k-1~deb9u1 [1385 kB]
Get:49 http://172.17.0.1/private stretch-staging/main armhf libstemmer-dev armhf 0+svn585-1 [62.2 kB]
Get:50 http://172.17.0.1/private stretch-staging/main armhf libzmq5 armhf 4.2.1-4+deb9u2 [169 kB]
Get:51 http://172.17.0.1/private stretch-staging/main armhf libzmq3-dev armhf 4.2.1-4+deb9u2 [344 kB]
Get:52 http://172.17.0.1/private stretch-staging/main armhf libzstd1 armhf 1.1.2-1 [160 kB]
Get:53 http://172.17.0.1/private stretch-staging/main armhf libzstd-dev armhf 1.1.2-1 [186 kB]
Get:54 http://172.17.0.1/private stretch-staging/main armhf zlib1g-dev armhf 1:1.2.8.dfsg-5 [198 kB]
Get:55 http://172.17.0.1/private stretch-staging/main armhf libjemalloc1 armhf 3.6.0-9.1 [81.1 kB]
Get:56 http://172.17.0.1/private stretch-staging/main armhf libjemalloc-dev armhf 3.6.0-9.1 [175 kB]
Get:57 http://172.17.0.1/private stretch-staging/main armhf liblz4-dev armhf 0.0~r131-2 [39.0 kB]
Get:58 http://172.17.0.1/private stretch-staging/main armhf libmsgpackc2 armhf 1.4.2-4 [16.1 kB]
Get:59 http://172.17.0.1/private stretch-staging/main armhf libmsgpack-dev armhf 1.4.2-4 [193 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 25.9 MB in 8s (3150 kB/s)
Selecting previously unselected package groff-base.
(Reading database ... 13276 files and directories currently installed.)
Preparing to unpack .../00-groff-base_1.22.3-9_armhf.deb ...
Unpacking groff-base (1.22.3-9) ...
Selecting previously unselected package libbsd0:armhf.
Preparing to unpack .../01-libbsd0_0.8.3-1_armhf.deb ...
Unpacking libbsd0:armhf (0.8.3-1) ...
Selecting previously unselected package bsdmainutils.
Preparing to unpack .../02-bsdmainutils_9.0.12+nmu1_armhf.deb ...
Unpacking bsdmainutils (9.0.12+nmu1) ...
Selecting previously unselected package libpipeline1:armhf.
Preparing to unpack .../03-libpipeline1_1.4.1-2_armhf.deb ...
Unpacking libpipeline1:armhf (1.4.1-2) ...
Selecting previously unselected package man-db.
Preparing to unpack .../04-man-db_2.7.6.1-2_armhf.deb ...
Unpacking man-db (2.7.6.1-2) ...
Selecting previously unselected package libpcrecpp0v5:armhf.
Preparing to unpack .../05-libpcrecpp0v5_2%3a8.39-3_armhf.deb ...
Unpacking libpcrecpp0v5:armhf (2:8.39-3) ...
Selecting previously unselected package libstemmer0d:armhf.
Preparing to unpack .../06-libstemmer0d_0+svn585-1_armhf.deb ...
Unpacking libstemmer0d:armhf (0+svn585-1) ...
Selecting previously unselected package libssl1.1:armhf.
Preparing to unpack .../07-libssl1.1_1.1.0k-1~deb9u1_armhf.deb ...
Unpacking libssl1.1:armhf (1.1.0k-1~deb9u1) ...
Selecting previously unselected package libmagic-mgc.
Preparing to unpack .../08-libmagic-mgc_1%3a5.30-1+deb9u2_armhf.deb ...
Unpacking libmagic-mgc (1:5.30-1+deb9u2) ...
Selecting previously unselected package libmagic1:armhf.
Preparing to unpack .../09-libmagic1_1%3a5.30-1+deb9u2_armhf.deb ...
Unpacking libmagic1:armhf (1:5.30-1+deb9u2) ...
Selecting previously unselected package file.
Preparing to unpack .../10-file_1%3a5.30-1+deb9u2_armhf.deb ...
Unpacking file (1:5.30-1+deb9u2) ...
Selecting previously unselected package gettext-base.
Preparing to unpack .../11-gettext-base_0.19.8.1-2_armhf.deb ...
Unpacking gettext-base (0.19.8.1-2) ...
Selecting previously unselected package libevent-2.0-5:armhf.
Preparing to unpack .../12-libevent-2.0-5_2.0.21-stable-3_armhf.deb ...
Unpacking libevent-2.0-5:armhf (2.0.21-stable-3) ...
Selecting previously unselected package libicu57:armhf.
Preparing to unpack .../13-libicu57_57.1-6+deb9u2_armhf.deb ...
Unpacking libicu57:armhf (57.1-6+deb9u2) ...
Selecting previously unselected package libxml2:armhf.
Preparing to unpack .../14-libxml2_2.9.4+dfsg1-2.2+deb9u2_armhf.deb ...
Unpacking libxml2:armhf (2.9.4+dfsg1-2.2+deb9u2) ...
Selecting previously unselected package libsigsegv2:armhf.
Preparing to unpack .../15-libsigsegv2_2.10-5_armhf.deb ...
Unpacking libsigsegv2:armhf (2.10-5) ...
Selecting previously unselected package m4.
Preparing to unpack .../16-m4_1.4.18-1_armhf.deb ...
Unpacking m4 (1.4.18-1) ...
Selecting previously unselected package autoconf.
Preparing to unpack .../17-autoconf_2.69-10_all.deb ...
Unpacking autoconf (2.69-10) ...
Selecting previously unselected package autotools-dev.
Preparing to unpack .../18-autotools-dev_20161112.1_all.deb ...
Unpacking autotools-dev (20161112.1) ...
Selecting previously unselected package automake.
Preparing to unpack .../19-automake_1%3a1.15-6_all.deb ...
Unpacking automake (1:1.15-6) ...
Selecting previously unselected package autopoint.
Preparing to unpack .../20-autopoint_0.19.8.1-2+deb9u1_all.deb ...
Unpacking autopoint (0.19.8.1-2+deb9u1) ...
Selecting previously unselected package libtool.
Preparing to unpack .../21-libtool_2.4.6-2_all.deb ...
Unpacking libtool (2.4.6-2) ...
Selecting previously unselected package dh-autoreconf.
Preparing to unpack .../22-dh-autoreconf_14_all.deb ...
Unpacking dh-autoreconf (14) ...
Selecting previously unselected package libarchive-zip-perl.
Preparing to unpack .../23-libarchive-zip-perl_1.59-1+deb9u1_all.deb ...
Unpacking libarchive-zip-perl (1.59-1+deb9u1) ...
Selecting previously unselected package libfile-stripnondeterminism-perl.
Preparing to unpack .../24-libfile-stripnondeterminism-perl_0.034-1_all.deb ...
Unpacking libfile-stripnondeterminism-perl (0.034-1) ...
Selecting previously unselected package libtimedate-perl.
Preparing to unpack .../25-libtimedate-perl_2.3000-2_all.deb ...
Unpacking libtimedate-perl (2.3000-2) ...
Selecting previously unselected package dh-strip-nondeterminism.
Preparing to unpack .../26-dh-strip-nondeterminism_0.034-1_all.deb ...
Unpacking dh-strip-nondeterminism (0.034-1) ...
Selecting previously unselected package libffi6:armhf.
Preparing to unpack .../27-libffi6_3.2.1-6_armhf.deb ...
Unpacking libffi6:armhf (3.2.1-6) ...
Selecting previously unselected package libglib2.0-0:armhf.
Preparing to unpack .../28-libglib2.0-0_2.50.3-2_armhf.deb ...
Unpacking libglib2.0-0:armhf (2.50.3-2) ...
Selecting previously unselected package libcroco3:armhf.
Preparing to unpack .../29-libcroco3_0.6.11-3_armhf.deb ...
Unpacking libcroco3:armhf (0.6.11-3) ...
Selecting previously unselected package libunistring0:armhf.
Preparing to unpack .../30-libunistring0_0.9.6+really0.9.3-0.1_armhf.deb ...
Unpacking libunistring0:armhf (0.9.6+really0.9.3-0.1) ...
Selecting previously unselected package gettext.
Preparing to unpack .../31-gettext_0.19.8.1-2_armhf.deb ...
Unpacking gettext (0.19.8.1-2) ...
Selecting previously unselected package intltool-debian.
Preparing to unpack .../32-intltool-debian_0.35.0+20060710.4_all.deb ...
Unpacking intltool-debian (0.35.0+20060710.4) ...
Selecting previously unselected package po-debconf.
Preparing to unpack .../33-po-debconf_1.0.20_all.deb ...
Unpacking po-debconf (1.0.20) ...
Selecting previously unselected package debhelper.
Preparing to unpack .../34-debhelper_10.2.5_all.deb ...
Unpacking debhelper (10.2.5) ...
Selecting previously unselected package libevent-core-2.0-5:armhf.
Preparing to unpack .../35-libevent-core-2.0-5_2.0.21-stable-3_armhf.deb ...
Unpacking libevent-core-2.0-5:armhf (2.0.21-stable-3) ...
Selecting previously unselected package libevent-extra-2.0-5:armhf.
Preparing to unpack .../36-libevent-extra-2.0-5_2.0.21-stable-3_armhf.deb ...
Unpacking libevent-extra-2.0-5:armhf (2.0.21-stable-3) ...
Selecting previously unselected package libevent-pthreads-2.0-5:armhf.
Preparing to unpack .../37-libevent-pthreads-2.0-5_2.0.21-stable-3_armhf.deb ...
Unpacking libevent-pthreads-2.0-5:armhf (2.0.21-stable-3) ...
Selecting previously unselected package libevent-openssl-2.0-5:armhf.
Preparing to unpack .../38-libevent-openssl-2.0-5_2.0.21-stable-3_armhf.deb ...
Unpacking libevent-openssl-2.0-5:armhf (2.0.21-stable-3) ...
Selecting previously unselected package libevent-dev.
Preparing to unpack .../39-libevent-dev_2.0.21-stable-3_armhf.deb ...
Unpacking libevent-dev (2.0.21-stable-3) ...
Selecting previously unselected package libmecab2:armhf.
Preparing to unpack .../40-libmecab2_0.996-3.1_armhf.deb ...
Unpacking libmecab2:armhf (0.996-3.1) ...
Selecting previously unselected package libmecab-dev.
Preparing to unpack .../41-libmecab-dev_0.996-3.1_armhf.deb ...
Unpacking libmecab-dev (0.996-3.1) ...
Selecting previously unselected package libpcre16-3:armhf.
Preparing to unpack .../42-libpcre16-3_2%3a8.39-3_armhf.deb ...
Unpacking libpcre16-3:armhf (2:8.39-3) ...
Selecting previously unselected package libpcre32-3:armhf.
Preparing to unpack .../43-libpcre32-3_2%3a8.39-3_armhf.deb ...
Unpacking libpcre32-3:armhf (2:8.39-3) ...
Selecting previously unselected package libpcre3-dev:armhf.
Preparing to unpack .../44-libpcre3-dev_2%3a8.39-3_armhf.deb ...
Unpacking libpcre3-dev:armhf (2:8.39-3) ...
Selecting previously unselected package libpgm-5.2-0:armhf.
Preparing to unpack .../45-libpgm-5.2-0_5.2.122~dfsg-2_armhf.deb ...
Unpacking libpgm-5.2-0:armhf (5.2.122~dfsg-2) ...
Selecting previously unselected package libsodium18:armhf.
Preparing to unpack .../46-libsodium18_1.0.11-2_armhf.deb ...
Unpacking libsodium18:armhf (1.0.11-2) ...
Selecting previously unselected package libssl-dev:armhf.
Preparing to unpack .../47-libssl-dev_1.1.0k-1~deb9u1_armhf.deb ...
Unpacking libssl-dev:armhf (1.1.0k-1~deb9u1) ...
Selecting previously unselected package libstemmer-dev:armhf.
Preparing to unpack .../48-libstemmer-dev_0+svn585-1_armhf.deb ...
Unpacking libstemmer-dev:armhf (0+svn585-1) ...
Selecting previously unselected package libzmq5:armhf.
Preparing to unpack .../49-libzmq5_4.2.1-4+deb9u2_armhf.deb ...
Unpacking libzmq5:armhf (4.2.1-4+deb9u2) ...
Selecting previously unselected package libzmq3-dev:armhf.
Preparing to unpack .../50-libzmq3-dev_4.2.1-4+deb9u2_armhf.deb ...
Unpacking libzmq3-dev:armhf (4.2.1-4+deb9u2) ...
Selecting previously unselected package libzstd1.
Preparing to unpack .../51-libzstd1_1.1.2-1_armhf.deb ...
Unpacking libzstd1 (1.1.2-1) ...
Selecting previously unselected package libzstd-dev.
Preparing to unpack .../52-libzstd-dev_1.1.2-1_armhf.deb ...
Unpacking libzstd-dev (1.1.2-1) ...
Selecting previously unselected package pkg-config.
Preparing to unpack .../53-pkg-config_0.29-4_armhf.deb ...
Unpacking pkg-config (0.29-4) ...
Selecting previously unselected package zlib1g-dev:armhf.
Preparing to unpack .../54-zlib1g-dev_1%3a1.2.8.dfsg-5_armhf.deb ...
Unpacking zlib1g-dev:armhf (1:1.2.8.dfsg-5) ...
Selecting previously unselected package libjemalloc1.
Preparing to unpack .../55-libjemalloc1_3.6.0-9.1_armhf.deb ...
Unpacking libjemalloc1 (3.6.0-9.1) ...
Selecting previously unselected package libjemalloc-dev.
Preparing to unpack .../56-libjemalloc-dev_3.6.0-9.1_armhf.deb ...
Unpacking libjemalloc-dev (3.6.0-9.1) ...
Selecting previously unselected package liblz4-dev:armhf.
Preparing to unpack .../57-liblz4-dev_0.0~r131-2_armhf.deb ...
Unpacking liblz4-dev:armhf (0.0~r131-2) ...
Selecting previously unselected package libmsgpackc2:armhf.
Preparing to unpack .../58-libmsgpackc2_1.4.2-4_armhf.deb ...
Unpacking libmsgpackc2:armhf (1.4.2-4) ...
Selecting previously unselected package libmsgpack-dev.
Preparing to unpack .../59-libmsgpack-dev_1.4.2-4_armhf.deb ...
Unpacking libmsgpack-dev (1.4.2-4) ...
Selecting previously unselected package sbuild-build-depends-groonga-dummy.
Preparing to unpack .../60-sbuild-build-depends-groonga-dummy_0.invalid.0_armhf.deb ...
Unpacking sbuild-build-depends-groonga-dummy (0.invalid.0) ...
Setting up libpgm-5.2-0:armhf (5.2.122~dfsg-2) ...
Setting up libarchive-zip-perl (1.59-1+deb9u1) ...
Setting up libjemalloc1 (3.6.0-9.1) ...
Setting up libtimedate-perl (2.3000-2) ...
Setting up libsigsegv2:armhf (2.10-5) ...
Setting up groff-base (1.22.3-9) ...
Setting up libzstd1 (1.1.2-1) ...
Setting up gettext-base (0.19.8.1-2) ...
Setting up libstemmer0d:armhf (0+svn585-1) ...
Setting up libmecab2:armhf (0.996-3.1) ...
Setting up libpipeline1:armhf (1.4.1-2) ...
Setting up m4 (1.4.18-1) ...
Setting up libicu57:armhf (57.1-6+deb9u2) ...
Setting up libbsd0:armhf (0.8.3-1) ...
Setting up libjemalloc-dev (3.6.0-9.1) ...
Setting up libxml2:armhf (2.9.4+dfsg1-2.2+deb9u2) ...
Setting up libstemmer-dev:armhf (0+svn585-1) ...
Setting up libmagic-mgc (1:5.30-1+deb9u2) ...
Setting up libmagic1:armhf (1:5.30-1+deb9u2) ...
Processing triggers for libc-bin (2.24-11) ...
Setting up autotools-dev (20161112.1) ...
Setting up libunistring0:armhf (0.9.6+really0.9.3-0.1) ...
Setting up libssl1.1:armhf (1.1.0k-1~deb9u1) ...
Setting up libevent-core-2.0-5:armhf (2.0.21-stable-3) ...
Setting up libzstd-dev (1.1.2-1) ...
Setting up libpcrecpp0v5:armhf (2:8.39-3) ...
Setting up libpcre32-3:armhf (2:8.39-3) ...
Setting up libffi6:armhf (3.2.1-6) ...
Setting up libpcre16-3:armhf (2:8.39-3) ...
Setting up libsodium18:armhf (1.0.11-2) ...
Setting up liblz4-dev:armhf (0.0~r131-2) ...
Setting up bsdmainutils (9.0.12+nmu1) ...
update-alternatives: using /usr/bin/bsd-write to provide /usr/bin/write (write) in auto mode
update-alternatives: using /usr/bin/bsd-from to provide /usr/bin/from (from) in auto mode
Setting up libevent-2.0-5:armhf (2.0.21-stable-3) ...
Setting up libmsgpackc2:armhf (1.4.2-4) ...
Setting up autopoint (0.19.8.1-2+deb9u1) ...
Setting up zlib1g-dev:armhf (1:1.2.8.dfsg-5) ...
Setting up libfile-stripnondeterminism-perl (0.034-1) ...
Setting up libpcre3-dev:armhf (2:8.39-3) ...
Setting up libzmq5:armhf (4.2.1-4+deb9u2) ...
Setting up libmecab-dev (0.996-3.1) ...
Setting up libssl-dev:armhf (1.1.0k-1~deb9u1) ...
Setting up libevent-pthreads-2.0-5:armhf (2.0.21-stable-3) ...
Setting up libglib2.0-0:armhf (2.50.3-2) ...
No schema files found: doing nothing.
Setting up libevent-extra-2.0-5:armhf (2.0.21-stable-3) ...
Setting up libmsgpack-dev (1.4.2-4) ...
Setting up libzmq3-dev:armhf (4.2.1-4+deb9u2) ...
Setting up autoconf (2.69-10) ...
Setting up file (1:5.30-1+deb9u2) ...
Setting up libcroco3:armhf (0.6.11-3) ...
Setting up pkg-config (0.29-4) ...
Setting up libevent-openssl-2.0-5:armhf (2.0.21-stable-3) ...
Setting up libevent-dev (2.0.21-stable-3) ...
Setting up automake (1:1.15-6) ...
update-alternatives: using /usr/bin/automake-1.15 to provide /usr/bin/automake (automake) in auto mode
Setting up man-db (2.7.6.1-2) ...
Not building database; man-db/auto-update is not 'true'.
Setting up libtool (2.4.6-2) ...
Setting up gettext (0.19.8.1-2) ...
Setting up intltool-debian (0.35.0+20060710.4) ...
Setting up po-debconf (1.0.20) ...
Setting up dh-autoreconf (14) ...
Setting up dh-strip-nondeterminism (0.034-1) ...
Setting up debhelper (10.2.5) ...
Setting up sbuild-build-depends-groonga-dummy (0.invalid.0) ...
Processing triggers for libc-bin (2.24-11) ...
W: No sandbox user '_apt' on the system, can not drop privileges

+------------------------------------------------------------------------------+
| Build environment                                                            |
+------------------------------------------------------------------------------+

Kernel: Linux 4.9.0-0.bpo.6-armmp armhf (armv7l)
Toolchain package versions: binutils_2.28-5 dpkg-dev_1.18.24 g++-6_6.3.0-18+rpi1 gcc-6_6.3.0-18+rpi1 libc6-dev_2.24-11 libstdc++-6-dev_6.3.0-18+rpi1 libstdc++6_6.3.0-18+rpi1 linux-libc-dev_3.18.5-1~exp1+rpi19+stretch
Package versions: adduser_3.115 apt_1.4.6 autoconf_2.69-10 automake_1:1.15-6 autopoint_0.19.8.1-2+deb9u1 autotools-dev_20161112.1 base-files_9.9+rpi1 base-passwd_3.5.43 bash_4.4-5 binutils_2.28-5 bsdmainutils_9.0.12+nmu1 bsdutils_1:2.29.2-1 build-essential_12.3 bzip2_1.0.6-8.1 coreutils_8.26-3 cpio_2.11+dfsg-6 cpp_4:6.3.0-4 cpp-6_6.3.0-18+rpi1 dash_0.5.8-2.4 debconf_1.5.61 debfoster_2.7-2.1 debhelper_10.2.5 debianutils_4.8.1.1 dh-autoreconf_14 dh-strip-nondeterminism_0.034-1 diffutils_1:3.5-3 dmsetup_2:1.02.137-2 dpkg_1.18.24 dpkg-dev_1.18.24 e2fslibs_1.43.4-2 e2fsprogs_1.43.4-2 fakeroot_1.21-3.1 file_1:5.30-1+deb9u2 findutils_4.6.0+git+20161106-2 fuse2fs_1.43.4-2 g++_4:6.3.0-4 g++-6_6.3.0-18+rpi1 gcc_4:6.3.0-4 gcc-4.6-base_4.6.4-5+rpi1 gcc-4.7-base_4.7.3-11+rpi1 gcc-4.8-base_4.8.5-4 gcc-4.9-base_4.9.3-14 gcc-6_6.3.0-18+rpi1 gcc-6-base_6.3.0-18+rpi1 gettext_0.19.8.1-2 gettext-base_0.19.8.1-2 gnupg_2.1.18-6 gnupg-agent_2.1.18-6 gnupg-l10n_2.1.18-6 gpgv_2.1.18-6 grep_2.27-2 groff-base_1.22.3-9 gzip_1.6-5 hostname_3.18 init_1.48 init-system-helpers_1.48 initscripts_2.88dsf-59.9 insserv_1.14.0-5.4 intltool-debian_0.35.0+20060710.4 kbd_2.0.3-2 klibc-utils_2.0.4-9+rpi1 kmod_23-2 libacl1_2.2.52-3 libapparmor1_2.11.0-3 libapt-pkg5.0_1.4.6 libarchive-zip-perl_1.59-1+deb9u1 libasan3_6.3.0-18+rpi1 libassuan0_2.4.3-2 libatomic1_6.3.0-18+rpi1 libattr1_1:2.4.47-2 libaudit-common_1:2.6.7-2 libaudit1_1:2.6.7-2 libblkid1_2.29.2-1 libbsd0_0.8.3-1 libbz2-1.0_1.0.6-8.1 libc-bin_2.24-11 libc-dev-bin_2.24-11 libc6_2.24-11 libc6-dev_2.24-11 libcap-ng0_0.7.7-3 libcap2_1:2.25-1 libcap2-bin_1:2.25-1 libcc1-0_6.3.0-18+rpi1 libcomerr2_1.43.4-2 libcroco3_0.6.11-3 libcryptsetup4_2:1.7.3-4 libdb5.3_5.3.28-12 libdbus-1-3_1.10.18-1 libdebconfclient0_0.227 libdevmapper1.02.1_2:1.02.137-2 libdpkg-perl_1.18.24 libdrm2_2.4.74-1 libevent-2.0-5_2.0.21-stable-3 libevent-core-2.0-5_2.0.21-stable-3 libevent-dev_2.0.21-stable-3 libevent-extra-2.0-5_2.0.21-stable-3 libevent-openssl-2.0-5_2.0.21-stable-3 libevent-pthreads-2.0-5_2.0.21-stable-3 libfakeroot_1.21-3.1 libfdisk1_2.29.2-1 libffi6_3.2.1-6 libfile-stripnondeterminism-perl_0.034-1 libfuse2_2.9.7-1 libgc1c2_1:7.4.2-8 libgcc-6-dev_6.3.0-18+rpi1 libgcc1_1:6.3.0-18+rpi1 libgcrypt20_1.7.6-2 libgdbm3_1.8.3-14 libglib2.0-0_2.50.3-2 libgmp10_2:6.1.2+dfsg-1 libgomp1_6.3.0-18+rpi1 libgpg-error0_1.26-2 libicu57_57.1-6+deb9u2 libidn11_1.33-1 libip4tc0_1.6.0+snapshot20161117-6 libisl15_0.18-1 libjemalloc-dev_3.6.0-9.1 libjemalloc1_3.6.0-9.1 libklibc_2.0.4-9+rpi1 libkmod2_23-2 libksba8_1.3.5-2 liblz4-1_0.0~r131-2 liblz4-dev_0.0~r131-2 liblzma5_5.2.2-1.2 libmagic-mgc_1:5.30-1+deb9u2 libmagic1_1:5.30-1+deb9u2 libmecab-dev_0.996-3.1 libmecab2_0.996-3.1 libmount1_2.29.2-1 libmpc3_1.0.3-1 libmpfr4_3.1.5-1 libmsgpack-dev_1.4.2-4 libmsgpackc2_1.4.2-4 libncurses5_6.0+20161126-1 libncursesw5_6.0+20161126-1 libnpth0_1.3-1 libpam-modules_1.1.8-3.6 libpam-modules-bin_1.1.8-3.6 libpam-runtime_1.1.8-3.6 libpam0g_1.1.8-3.6 libpcre16-3_2:8.39-3 libpcre3_2:8.39-3 libpcre3-dev_2:8.39-3 libpcre32-3_2:8.39-3 libpcrecpp0v5_2:8.39-3 libperl5.24_5.24.1-3 libpgm-5.2-0_5.2.122~dfsg-2 libpipeline1_1.4.1-2 libpng12-0_1.2.54-6 libprocps6_2:3.3.12-3 libreadline7_7.0-3 libseccomp2_2.3.1-2.1 libselinux1_2.6-3 libsemanage-common_2.6-2 libsemanage1_2.6-2 libsepol1_2.6-2 libsigsegv2_2.10-5 libsmartcols1_2.29.2-1 libsodium18_1.0.11-2 libsqlite3-0_3.16.2-5 libss2_1.43.4-2 libssl-dev_1.1.0k-1~deb9u1 libssl1.1_1.1.0k-1~deb9u1 libstdc++-6-dev_6.3.0-18+rpi1 libstdc++6_6.3.0-18+rpi1 libstemmer-dev_0+svn585-1 libstemmer0d_0+svn585-1 libsystemd0_232-25 libtimedate-perl_2.3000-2 libtinfo5_6.0+20161126-1 libtool_2.4.6-2 libubsan0_6.3.0-18+rpi1 libudev1_232-25 libunistring0_0.9.6+really0.9.3-0.1 libusb-0.1-4_2:0.1.12-30 libustr-1.0-1_1.0.4-6 libuuid1_2.29.2-1 libxml2_2.9.4+dfsg1-2.2+deb9u2 libzmq3-dev_4.2.1-4+deb9u2 libzmq5_4.2.1-4+deb9u2 libzstd-dev_1.1.2-1 libzstd1_1.1.2-1 linux-libc-dev_3.18.5-1~exp1+rpi19+stretch login_1:4.4-4.1 lsb-base_9.20161125+rpi1 m4_1.4.18-1 make_4.1-9.1 makedev_2.3.1-93 man-db_2.7.6.1-2 manpages_4.10-2 mawk_1.3.3-17 mount_2.29.2-1 multiarch-support_2.24-11 ncurses-base_6.0+20161126-1 ncurses-bin_6.0+20161126-1 netbase_5.4 passwd_1:4.4-4.1 patch_2.7.5-1 perl_5.24.1-3 perl-base_5.24.1-3 perl-modules-5.24_5.24.1-3 pinentry-curses_1.0.0-2 pkg-config_0.29-4 po-debconf_1.0.20 procps_2:3.3.12-3 psmisc_22.21-2.1 raspbian-archive-keyring_20120528.2 readline-common_7.0-3 sbuild-build-depends-core-dummy_0.invalid.0 sbuild-build-depends-groonga-dummy_0.invalid.0 sed_4.4-1 sensible-utils_0.0.9 startpar_0.59-3.1 systemd_232-25 systemd-sysv_232-25 sysv-rc_2.88dsf-59.9 sysvinit-utils_2.88dsf-59.9 tar_1.29b-1.1 tzdata_2017b-1 udev_232-25 util-linux_2.29.2-1 xz-utils_5.2.2-1.2 zlib1g_1:1.2.8.dfsg-5 zlib1g-dev_1:1.2.8.dfsg-5

+------------------------------------------------------------------------------+
| Build                                                                        |
+------------------------------------------------------------------------------+


Unpack source
-------------

gpgv: unknown type of key resource 'trustedkeys.kbx'
gpgv: keyblock resource '/sbuild-nonexistent/.gnupg/trustedkeys.kbx': General error
gpgv: Signature made Thu May  9 13:12:47 2019 UTC
gpgv:                using RSA key 719EB2D93DBE9C4D21FBA064F7FB75C566ED20E3
gpgv: Can't check signature: No public key
dpkg-source: warning: failed to verify signature on ./groonga_6.1.5-1+deb9u1.dsc
dpkg-source: info: extracting groonga in /<<PKGBUILDDIR>>
dpkg-source: info: unpacking groonga_6.1.5.orig.tar.gz
dpkg-source: info: unpacking groonga_6.1.5-1+deb9u1.debian.tar.xz
dpkg-source: info: applying fix-nginx-FTBFS-on-kfreebsd.patch

Check disc space
----------------

Sufficient free space for build

User Environment
----------------

APT_CONFIG=/var/lib/sbuild/apt.conf
DEB_BUILD_OPTIONS=parallel=4
HOME=/sbuild-nonexistent
LC_ALL=POSIX
LOGNAME=buildd
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
SCHROOT_ALIAS_NAME=stretch-staging-armhf-sbuild
SCHROOT_CHROOT_NAME=stretch-staging-armhf-sbuild
SCHROOT_COMMAND=env
SCHROOT_GID=109
SCHROOT_GROUP=buildd
SCHROOT_SESSION_ID=stretch-staging-armhf-sbuild-5ba450ad-6d12-42e5-a21b-767468ea5c9c
SCHROOT_UID=104
SCHROOT_USER=buildd
SHELL=/bin/sh
TERM=linux
USER=buildd

dpkg-buildpackage
-----------------

dpkg-buildpackage: info: source package groonga
dpkg-buildpackage: info: source version 6.1.5-1+deb9u1
dpkg-buildpackage: info: source distribution stretch
 dpkg-source --before-build groonga-6.1.5
dpkg-buildpackage: info: host architecture armhf
 fakeroot debian/rules clean
dh clean
   dh_testdir
   dh_auto_clean
   dh_autoreconf_clean
   dh_clean
 debian/rules build-arch
dh build-arch
   dh_testdir -a
   dh_update_autotools_config -a
   dh_autoreconf -a
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
configure.ac:80: installing './compile'
configure.ac:10: installing './missing'
benchmark/Makefile.am: installing './depcomp'
   debian/rules override_dh_auto_configure
make[1]: Entering directory '/<<PKGBUILDDIR>>'
dh_auto_configure -- --with-munin-plugins --enable-mruby --disable-static
	./configure --build=arm-linux-gnueabihf --prefix=/usr --includedir=\${prefix}/include --mandir=\${prefix}/share/man --infodir=\${prefix}/share/info --sysconfdir=/etc --localstatedir=/var --disable-silent-rules --libdir=\${prefix}/lib/arm-linux-gnueabihf --libexecdir=\${prefix}/lib/arm-linux-gnueabihf --disable-maintainer-mode --disable-dependency-tracking --with-munin-plugins --enable-mruby --disable-static
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking how to create a pax tar archive... gnutar
checking whether make supports nested variables... (cached) yes
checking build system type... arm-unknown-linux-gnueabihf
checking host system type... arm-unknown-linux-gnueabihf
checking for native Win32... no
checking for some Win32 platform... no
checking for NetBSD.... no
checking for Solaris.... no
checking for style of include used by make... 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 whether gcc understands -c and -o together... yes
checking dependency style of gcc... none
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 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 whether byte ordering is bigendian... no
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... none
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) none
checking for gcc option to accept ISO C99... none needed
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.19... yes
checking for clang... no
checking if gcc supports -Wall... yes
checking if g++ supports -Wall... yes
checking if gcc supports -Wextra... yes
checking if g++ supports -Wextra... yes
checking if gcc supports -Wno-unused-but-set-variable... yes
checking if g++ supports -Wno-unused-but-set-variable... yes
checking if gcc supports -Wno-unused-parameter... yes
checking if g++ supports -Wno-unused-parameter... yes
checking if gcc supports -Wno-sign-compare... yes
checking if g++ supports -Wno-sign-compare... yes
checking if gcc supports -Wno-pointer-sign... yes
checking if gcc supports -Wno-missing-field-initializers... yes
checking if g++ supports -Wno-missing-field-initializers... yes
checking if gcc supports -Wno-declaration-after-statement... yes
checking if gcc supports -Wformat... yes
checking if g++ supports -Wformat... yes
checking if gcc supports -Wstrict-aliasing=2... yes
checking if g++ supports -Wstrict-aliasing=2... yes
checking if gcc supports -Wdisabled-optimization... yes
checking if g++ supports -Wdisabled-optimization... yes
checking if gcc supports -Wfloat-equal... yes
checking if g++ supports -Wfloat-equal... yes
checking if gcc supports -Wpointer-arith... yes
checking if g++ supports -Wpointer-arith... yes
checking if gcc supports -Wbad-function-cast... yes
checking if gcc supports -Wcast-align... yes
checking if g++ supports -Wcast-align... yes
checking if gcc supports -Wwrite-strings... yes
checking if g++ supports -Wwrite-strings... yes
checking if g++ supports -fexceptions... yes
checking if g++ supports -fimplicit-templates... yes
checking if gcc supports -Wno-clobbered... yes
checking if g++ supports -Wno-clobbered... yes
checking how to print strings... printf
checking for a sed that does not truncate output... /bin/sed
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert arm-unknown-linux-gnueabihf file names to arm-unknown-linux-gnueabihf format... func_convert_file_noop
checking how to convert arm-unknown-linux-gnueabihf file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking for shl_load... no
checking for shl_load in -ldld... no
checking for dlopen... no
checking for dlopen in -ldl... yes
checking whether a program can dlopen itself... yes
checking whether a statically linked program can dlopen itself... no
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking how to run the C++ preprocessor... g++ -E
checking for ld used by g++... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC -DPIC
checking if g++ PIC flag -fPIC -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... (cached) GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking for windres... no
configure: creating ./config.lt
config.lt: creating libtool
checking for library containing log... -lm
checking for fpclassify... yes
checking dirent.h usability... yes
checking dirent.h presence... yes
checking for dirent.h... yes
checking for dlfcn.h... (cached) yes
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking execinfo.h usability... yes
checking execinfo.h presence... yes
checking for execinfo.h... yes
checking for inttypes.h... (cached) yes
checking netdb.h usability... yes
checking netdb.h presence... yes
checking for netdb.h... yes
checking signal.h usability... yes
checking signal.h presence... yes
checking for signal.h... yes
checking sys/mman.h usability... yes
checking sys/mman.h presence... yes
checking for sys/mman.h... yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking sys/resource.h usability... yes
checking sys/resource.h presence... yes
checking for sys/resource.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/sysctl.h usability... yes
checking sys/sysctl.h presence... yes
checking for sys/sysctl.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking sys/wait.h usability... yes
checking sys/wait.h presence... yes
checking for sys/wait.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 for unistd.h... (cached) yes
checking for _gmtime64_s... no
checking for _localtime64_s... no
checking for _strtoui64... no
checking for gmtime_r... yes
checking for localtime_r... yes
checking for mkstemp... yes
checking for strcasecmp... yes
checking for strncasecmp... yes
checking for strtoull... yes
checking for library containing backtrace... none required
checking for library containing clock_gettime... none required
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... 64
checking for off_t... yes
checking for size_t... yes
checking size of off_t... 8
checking pthread.h usability... yes
checking pthread.h presence... yes
checking for pthread.h... yes
checking for library containing pthread_create... -lpthread
checking for pthread_mutexattr_setpshared... yes
checking for pthread_condattr_setpshared... yes
checking for library containing gethostbyname... none required
checking for library containing socket... none required
checking for library containing dlopen... -ldl
checking whether enable uyield... no
checking whether enable exact-alloc-count... yes
checking whether enable fmalloc... no
checking whether enable abort... no
checking whether allow dynamic memory allocation change... no
checking whether debug memory management... no
checking sys/epoll.h usability... yes
checking sys/epoll.h presence... yes
checking for sys/epoll.h... yes
checking for epoll_create... yes
checking whether MSG_MORE defined... no
checking whether MSG_NOSIGNAL defined... no
checking for benchmark availablity... 
checking for lemon... no
checking for LIBEDIT... no
checking for library containing compress... -lz
checking for LIBLZ4... yes
checking for LIBZSTD... yes
checking whether enable MeCab... yes
checking for mecab-config... /usr/bin/mecab-config
checking for library containing mecab_new... -lmecab
checking mecab.h usability... yes
checking mecab.h presence... yes
checking for mecab.h... yes
checking for mecab_dictionary_info_t... yes
checking whether enable KyTea... auto
checking for KYTEA... no
checking whether enable libstemmer... auto
checking libstemmer.h usability... yes
checking libstemmer.h presence... yes
checking for libstemmer.h... yes
checking for sb_stemmer_list in -lstemmer... yes
checking whether enable futex... no
checking for LIBZMQ... yes
checking for library containing event_init... none required
checking for MESSAGE_PACK... yes
checking for platform which requires libatomic... checking for __atomic_store_8 in -latomic... yes
checking whether enable document... auto
checking whether document available... yes
checking whether document buildable... no
checking whether having built document... yes
checking whether install munin plugins... yes
checking whether package platform... no
checking for the suffix of plugin shared libraries... .so
checking whether enable mruby... yes
checking for PCRE... yes
checking for SSL... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating build/Makefile
config.status: creating build/cmake_modules/Makefile
config.status: creating src/Makefile
config.status: creating src/suggest/Makefile
config.status: creating src/httpd/Makefile
config.status: creating lib/Makefile
config.status: creating lib/dat/Makefile
config.status: creating lib/mrb/Makefile
config.status: creating lib/mrb/scripts/Makefile
config.status: creating lib/mrb/scripts/command_line/Makefile
config.status: creating lib/mrb/scripts/context/Makefile
config.status: creating lib/mrb/scripts/expression_tree/Makefile
config.status: creating lib/mrb/scripts/initialize/Makefile
config.status: creating lib/mrb/scripts/logger/Makefile
config.status: creating lib/mrb/scripts/query_logger/Makefile
config.status: creating lib/proc/Makefile
config.status: creating lib/ts/Makefile
config.status: creating include/Makefile
config.status: creating include/groonga/Makefile
config.status: creating plugins/Makefile
config.status: creating plugins/tokenizers/Makefile
config.status: creating plugins/suggest/Makefile
config.status: creating plugins/query_expanders/Makefile
config.status: creating plugins/ruby/Makefile
config.status: creating plugins/token_filters/Makefile
config.status: creating plugins/sharding/Makefile
config.status: creating plugins/functions/Makefile
config.status: creating plugins/expression_rewriters/Makefile
config.status: creating examples/Makefile
config.status: creating examples/dictionary/Makefile
config.status: creating examples/dictionary/edict/Makefile
config.status: creating examples/dictionary/eijiro/Makefile
config.status: creating examples/dictionary/gene95/Makefile
config.status: creating examples/dictionary/jmdict/Makefile
config.status: creating packages/Makefile
config.status: creating packages/apt/Makefile
config.status: creating packages/ubuntu/Makefile
config.status: creating packages/rpm/Makefile
config.status: creating packages/rpm/centos/Makefile
config.status: creating packages/yum/Makefile
config.status: creating packages/source/Makefile
config.status: creating packages/windows/Makefile
config.status: creating packages/windows/patches/Makefile
config.status: creating packages/windows/language-files/Makefile
config.status: creating packages/windows/setup-x64.nsi
config.status: creating data/Makefile
config.status: creating data/html/Makefile
config.status: creating data/munin/Makefile
config.status: creating data/init.d/Makefile
config.status: creating data/init.d/centos/Makefile
config.status: creating data/init.d/centos/sysconfig/Makefile
config.status: creating data/logrotate.d/Makefile
config.status: creating data/logrotate.d/centos/Makefile
config.status: creating data/systemd/Makefile
config.status: creating data/systemd/centos/Makefile
config.status: creating data/systemd/centos/sysconfig/Makefile
config.status: creating data/scripts/Makefile
config.status: creating tools/Makefile
config.status: creating doc/Makefile
config.status: creating doc/locale/Makefile
config.status: creating doc/locale/en/Makefile
config.status: creating doc/locale/en/LC_MESSAGES/Makefile
config.status: creating doc/locale/ja/Makefile
config.status: creating doc/locale/ja/LC_MESSAGES/Makefile
config.status: creating test/Makefile
config.status: creating test/unit/Makefile
config.status: creating test/unit/lib/Makefile
config.status: creating test/unit/fixtures/Makefile
config.status: creating test/unit/fixtures/inverted-index/Makefile
config.status: creating test/unit/fixtures/stress/Makefile
config.status: creating test/unit/fixtures/plugins/Makefile
config.status: creating test/unit/fixtures/geo/Makefile
config.status: creating test/unit/fixtures/story/Makefile
config.status: creating test/unit/fixtures/story/taiyaki/Makefile
config.status: creating test/unit/util/Makefile
config.status: creating test/unit/core/Makefile
config.status: creating test/unit/core/dat/Makefile
config.status: creating test/unit/story/Makefile
config.status: creating test/command/Makefile
config.status: creating benchmark/Makefile
config.status: creating benchmark/fixtures/Makefile
config.status: creating benchmark/fixtures/geo-select/Makefile
config.status: creating benchmark/lib/Makefile
config.status: creating vendor/Makefile
config.status: creating vendor/lz4/Makefile
config.status: creating vendor/onigmo/Makefile
config.status: creating vendor/mecab/Makefile
config.status: creating vendor/message_pack/Makefile
config.status: creating vendor/mruby/Makefile
config.status: creating lib/metadata.rc
config.status: creating packages/rpm/centos/groonga.spec
config.status: creating packages/apt/debian/groonga-keyring.postrm
config.status: creating packages/apt/env.sh
config.status: creating packages/yum/env.sh
config.status: creating groonga.pc
config.status: creating config.sh
config.status: creating groonga-httpd-conf.sh
config.status: creating data/groonga-httpd.conf
config.status: creating data/logrotate.d/centos/groonga-httpd
config.status: creating data/scripts/groonga-httpd-restart
config.status: creating data/systemd/centos/groonga-httpd.service
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
=== configuring in src/httpd (/<<PKGBUILDDIR>>/src/httpd)
configure: running /bin/bash ./configure --disable-option-checking '--prefix=/usr'  '--build=arm-linux-gnueabihf' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-silent-rules' '--libdir=${prefix}/lib/arm-linux-gnueabihf' '--libexecdir=${prefix}/lib/arm-linux-gnueabihf' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-munin-plugins' '--enable-mruby' '--disable-static' 'build_alias=arm-linux-gnueabihf' 'CFLAGS=-g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security' --cache-file=/dev/null --srcdir=.
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 whether make sets $(MAKE)... yes
checking for main in -lm... yes
checking for main in -lcrypto... 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 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 for string.h... (cached) yes
checking for unistd.h... (cached) yes
checking for an ANSI C-conforming const... yes
checking whether lstat correctly handles trailing slash... yes
checking whether stat accepts an empty string... no
checking for memset... yes
checking for putenv... yes
checking for strtol... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config
make[2]: Entering directory '/<<PKGBUILDDIR>>/vendor/ngx_mruby-source'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/vendor/ngx_mruby-source'
checking for OS
 + Linux 4.9.0-0.bpo.6-armmp armv7l
checking for C compiler ... found
 + using GNU C compiler
checking for --with-ld-opt="-Wl,-z,relro -Wl,-z,now  " ... found
checking for -Wl,-E switch ... found
checking for gcc builtin atomic operations ... found
checking for C99 variadic macros ... found
checking for gcc variadic macros ... found
checking for gcc builtin 64 bit byteswap ... found
checking for unistd.h ... found
checking for inttypes.h ... found
checking for limits.h ... found
checking for sys/filio.h ... not found
checking for sys/param.h ... found
checking for sys/mount.h ... found
checking for sys/statvfs.h ... found
checking for crypt.h ... found
checking for Linux specific features
checking for epoll ... found
checking for EPOLLRDHUP ... found
checking for EPOLLEXCLUSIVE ... found
checking for O_PATH ... found
checking for sendfile() ... found
checking for sendfile64() ... found
checking for sys/prctl.h ... found
checking for prctl(PR_SET_DUMPABLE) ... found
checking for sched_setaffinity() ... found
checking for crypt_r() ... found
checking for sys/vfs.h ... found
checking for nobody group ... not found
checking for nogroup group ... found
checking for poll() ... found
checking for /dev/poll ... not found
checking for kqueue ... not found
checking for crypt() ... not found
checking for crypt() in libcrypt ... found
checking for F_READAHEAD ... not found
checking for posix_fadvise() ... found
checking for O_DIRECT ... found
checking for F_NOCACHE ... not found
checking for directio() ... not found
checking for statfs() ... found
checking for statvfs() ... found
checking for dlopen() ... not found
checking for dlopen() in libdl ... found
checking for sched_yield() ... found
checking for SO_SETFIB ... not found
checking for SO_REUSEPORT ... found
checking for SO_ACCEPTFILTER ... not found
checking for SO_BINDANY ... not found
checking for IP_BIND_ADDRESS_NO_PORT ... found
checking for IP_TRANSPARENT ... found
checking for IP_BINDANY ... not found
checking for IP_RECVDSTADDR ... not found
checking for IP_PKTINFO ... found
checking for IPV6_RECVPKTINFO ... found
checking for TCP_DEFER_ACCEPT ... found
checking for TCP_KEEPIDLE ... found
checking for TCP_FASTOPEN ... found
checking for TCP_INFO ... found
checking for accept4() ... found
checking for eventfd() ... found
checking for int size ... 4 bytes
checking for long size ... 4 bytes
checking for long long size ... 8 bytes
checking for void * size ... 4 bytes
checking for uint32_t ... found
checking for uint64_t ... found
checking for sig_atomic_t ... found
checking for sig_atomic_t size ... 4 bytes
checking for socklen_t ... found
checking for in_addr_t ... found
checking for in_port_t ... found
checking for rlim_t ... found
checking for uintptr_t ... uintptr_t found
checking for system byte ordering ... little endian
checking for size_t size ... 4 bytes
checking for off_t size ... 8 bytes
checking for time_t size ... 4 bytes
checking for AF_INET6 ... found
checking for setproctitle() ... not found
checking for pread() ... found
checking for pwrite() ... found
checking for pwritev() ... found
checking for sys_nerr ... found
checking for localtime_r() ... found
checking for posix_memalign() ... found
checking for memalign() ... found
checking for mmap(MAP_ANON|MAP_SHARED) ... found
checking for mmap("/dev/zero", MAP_SHARED) ... found
checking for System V shared memory ... found
checking for POSIX semaphores ... not found
checking for POSIX semaphores in libpthread ... found
checking for struct msghdr.msg_control ... found
checking for ioctl(FIONBIO) ... found
checking for struct tm.tm_gmtoff ... found
checking for struct dirent.d_namlen ... not found
checking for struct dirent.d_type ... found
checking for sysconf(_SC_NPROCESSORS_ONLN) ... found
checking for openat(), fstatat() ... found
checking for getaddrinfo() ... found
configuring additional modules
adding module in /<<PKGBUILDDIR>>/src/httpd/nginx-module
 + ngx_http_groonga_module was configured
adding module in /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit
 + ngx_devel_kit was configured
adding module in /<<PKGBUILDDIR>>/vendor/ngx_mruby-source
 + ngx_http_mruby_module was configured
checking for PCRE library ... found
checking for PCRE JIT support ... found
checking for OpenSSL library ... found
checking for zlib library ... found
creating objs/Makefile

Configuration summary
  + using system PCRE library
  + using system OpenSSL library
  + using system zlib library

  nginx path prefix: "/etc/groonga/httpd"
  nginx binary file: "/usr/sbin/groonga-httpd"
  nginx modules path: "/etc/groonga/httpd/modules"
  nginx configuration prefix: "/etc/groonga/httpd"
  nginx configuration file: "/etc/groonga/httpd/groonga-httpd.conf"
  nginx pid file: "/var/run/groonga-httpd.pid"
  nginx error log file: "/var/log/groonga/httpd/error.log"
  nginx http access log file: "/var/log/groonga/httpd/access.log"
  nginx http client request body temporary files: "client_body_temp"
  nginx http proxy temporary files: "proxy_temp"
  nginx http fastcgi temporary files: "fastcgi_temp"
  nginx http uwsgi temporary files: "uwsgi_temp"
  nginx http scgi temporary files: "scgi_temp"

=== configuring in vendor/onigmo (/<<PKGBUILDDIR>>/vendor/onigmo)
configure: running /bin/bash ./configure --disable-option-checking '--prefix=/usr'  '--build=arm-linux-gnueabihf' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-silent-rules' '--libdir=${prefix}/lib/arm-linux-gnueabihf' '--libexecdir=${prefix}/lib/arm-linux-gnueabihf' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-munin-plugins' '--enable-mruby' '--disable-static' 'build_alias=arm-linux-gnueabihf' 'CFLAGS=-g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security' --cache-file=/dev/null --srcdir=.
./configure --with-pic --disable-shared --enable-static --prefix=/usr
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
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 whether gcc understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking build system type... armv7l-unknown-linux-gnueabihf
checking host system type... armv7l-unknown-linux-gnueabihf
checking how to print strings... printf
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert armv7l-unknown-linux-gnueabihf file names to armv7l-unknown-linux-gnueabihf format... func_convert_file_noop
checking how to convert armv7l-unknown-linux-gnueabihf file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking how to run the C preprocessor... gcc -E
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 for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
checking whether make sets $(MAKE)... (cached) yes
checking for python3... no
checking for python... no
checking for python2... no
checking for ANSI C header files... (cached) yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking sys/times.h usability... yes
checking sys/times.h presence... yes
checking for sys/times.h... yes
checking for stdint.h... (cached) yes
checking size of int... 4
checking size of short... 2
checking size of long... 4
checking size of void*... 4
checking size of long long... 8
checking for an ANSI C-conforming const... yes
checking whether time.h and sys/time.h may both be included... yes
checking for size_t... yes
checking for working alloca.h... yes
checking for alloca... yes
checking for working memcmp... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating onigmo-config
config.status: creating sample/Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default commands
groonga 6.1.5 configuration:
-----------------------
  Compiler:              gcc
  CFLAGS:                -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings  
  CXXFLAGS:              -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates
  Libraries:             -lz -ldl -lpthread -lm  
  Stack size:            1024
  Document:              yes
    buildable:           no
    built:               yes
  Munin plugins:         yes
  Package platform:      no

Paths:
  Install path prefix:   /usr
  Configuration file:    /etc/groonga/groonga.conf

Tokenizers:
  MeCab:                 yes
    CPPFLAGS:            -I/usr/include
    LDFLAGS:             -L/usr/lib/arm-linux-gnueabihf
    LIBS:                -lmecab 
  KyTea:                 no

Token filters:
  libstemmer:            yes
    CFLAGS:              
    LIBS:                -lstemmer

Libraries:
  ZeroMQ:                yes
    CFLAGS:              
    LIBS:                -lzmq
  libevent:              yes
    CFLAGS:              
    LIBS:                -levent
  MessagePack:           yes
    CFLAGS:              
    LIBS:                -lmsgpackc
  mruby:                 yes
  jemalloc:              no

groonga-httpd:
  enable:                yes
  default database path: /var/lib/groonga/db/db
  PCRE:                  yes
    CFLAGS:              
    LIBS only -L:        
   SSL:                  yes
    CFLAGS:              
    LIBS only -L:        

Tools:
  Sphinx:                
  lemon:                 none
  Ruby:                  
  Cutter:                

For packages:
  rsync path:            packages@packages.groonga.org:public
  Launchpad PGP key:     
  GPG UID:               45499429

Now type 'make' to build groonga 6.1.5!
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   dh_auto_build -a
	make -j4
make[1]: Entering directory '/<<PKGBUILDDIR>>'
make  all-recursive
make[2]: Entering directory '/<<PKGBUILDDIR>>'
Making all in build
make[3]: Entering directory '/<<PKGBUILDDIR>>/build'
Making all in cmake_modules
make[4]: Entering directory '/<<PKGBUILDDIR>>/build/cmake_modules'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/build/cmake_modules'
make[4]: Entering directory '/<<PKGBUILDDIR>>/build'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/build'
Making all in include
make[3]: Entering directory '/<<PKGBUILDDIR>>/include'
Making all in groonga
make[4]: Entering directory '/<<PKGBUILDDIR>>/include/groonga'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/include/groonga'
make[4]: Entering directory '/<<PKGBUILDDIR>>/include'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/include'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/include'
Making all in vendor
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor'
Making all in lz4
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/lz4'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/lz4'
Making all in onigmo
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo'
cd ../onigmo-source && make all
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make  all-recursive
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
Making all in .
make[7]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regerror.lo -MD -MP -MF .deps/regerror.Tpo -c -o regerror.lo regerror.c
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regparse.lo -MD -MP -MF .deps/regparse.Tpo -c -o regparse.lo regparse.c
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regext.lo -MD -MP -MF .deps/regext.Tpo -c -o regext.lo regext.c
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regcomp.lo -MD -MP -MF .deps/regcomp.Tpo -c -o regcomp.lo regcomp.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regerror.lo -MD -MP -MF .deps/regerror.Tpo -c regerror.c  -fPIC -DPIC -o regerror.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regext.lo -MD -MP -MF .deps/regext.Tpo -c regext.c  -fPIC -DPIC -o regext.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regcomp.lo -MD -MP -MF .deps/regcomp.Tpo -c regcomp.c  -fPIC -DPIC -o regcomp.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regparse.lo -MD -MP -MF .deps/regparse.Tpo -c regparse.c  -fPIC -DPIC -o regparse.o
regparse.c: In function 'name_find':
regparse.c:546:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
     onig_st_lookup_strend(t, name, name_end, (HashDataType* )((void* )(&e)));
     ^~~~~~~~~~~~~~~~~~~~~
In file included from regparse.h:33:0,
                 from regparse.c:31:
regparse.c: In function 'add_code_range_to_buf0':
regint.h:692:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GET_CODE_POINT(code,p)   code = *((OnigCodePoint* )(p))
                                           ^
regparse.c:1689:5: note: in expansion of macro 'GET_CODE_POINT'
     GET_CODE_POINT(n, bbuf->p);
     ^~~~~~~~~~~~~~
regparse.c:1691:10: warning: cast increases required alignment of target type [-Wcast-align]
   data = (OnigCodePoint* )(bbuf->p);
          ^
regparse.c: In function 'not_code_range_buf':
regparse.c:1791:10: warning: cast increases required alignment of target type [-Wcast-align]
   data = (OnigCodePoint* )(bbuf->p);
          ^
regparse.c: In function 'or_code_range_buf':
regparse.c:1857:11: warning: cast increases required alignment of target type [-Wcast-align]
   data1 = (OnigCodePoint* )(bbuf1->p);
           ^
regparse.c: In function 'and_code_range_buf':
regparse.c:1940:11: warning: cast increases required alignment of target type [-Wcast-align]
   data1 = (OnigCodePoint* )(bbuf1->p);
           ^
regparse.c:1941:11: warning: cast increases required alignment of target type [-Wcast-align]
   data2 = (OnigCodePoint* )(bbuf2->p);
           ^
mv -f .deps/regext.Tpo .deps/regext.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regexec.lo -MD -MP -MF .deps/regexec.Tpo -c -o regexec.lo regexec.c
In file included from regparse.h:33:0,
                 from regcomp.c:31:
regcomp.c: In function 'onig_is_in_code_range':
regint.h:692:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GET_CODE_POINT(code,p)   code = *((OnigCodePoint* )(p))
                                           ^
regcomp.c:6039:3: note: in expansion of macro 'GET_CODE_POINT'
   GET_CODE_POINT(n, p);
   ^~~~~~~~~~~~~~
regcomp.c:6040:10: warning: cast increases required alignment of target type [-Wcast-align]
   data = (OnigCodePoint* )p;
          ^
mv -f .deps/regerror.Tpo .deps/regerror.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT reggnu.lo -MD -MP -MF .deps/reggnu.Tpo -c -o reggnu.lo reggnu.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regexec.lo -MD -MP -MF .deps/regexec.Tpo -c regexec.c  -fPIC -DPIC -o regexec.o
In file included from regparse.h:33:0,
                 from regparse.c:31:
regparse.c: In function 'is_onechar_cclass':
regint.h:692:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GET_CODE_POINT(code,p)   code = *((OnigCodePoint* )(p))
                                           ^
regparse.c:6467:5: note: in expansion of macro 'GET_CODE_POINT'
     GET_CODE_POINT(n, bbuf->p);
     ^~~~~~~~~~~~~~
regparse.c:6468:12: warning: cast increases required alignment of target type [-Wcast-align]
     data = (OnigCodePoint* )(bbuf->p) + 1;
            ^
regexec.c: In function 'match_at':
regexec.c:502:18: warning: cast increases required alignment of target type [-Wcast-align]
     stk_alloc  = (OnigStackType* )(alloc_addr + sizeof(OnigStackIndex) * (ptr_num));\
                  ^
regexec.c:1616:3: note: in expansion of macro 'STACK_INIT'
   STACK_INIT(alloca_base, xmalloc_base, n, INIT_MATCH_STACK_SIZE);
   ^~~~~~~~~~
regexec.c:1619:16: warning: cast increases required alignment of target type [-Wcast-align]
   repeat_stk = (OnigStackIndex* )alloca_base;
                ^
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT reggnu.lo -MD -MP -MF .deps/reggnu.Tpo -c reggnu.c  -fPIC -DPIC -o reggnu.o
mv -f .deps/reggnu.Tpo .deps/reggnu.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regenc.lo -MD -MP -MF .deps/regenc.Tpo -c -o regenc.lo regenc.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regenc.lo -MD -MP -MF .deps/regenc.Tpo -c regenc.c  -fPIC -DPIC -o regenc.o
mv -f .deps/regenc.Tpo .deps/regenc.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regsyntax.lo -MD -MP -MF .deps/regsyntax.Tpo -c -o regsyntax.lo regsyntax.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regsyntax.lo -MD -MP -MF .deps/regsyntax.Tpo -c regsyntax.c  -fPIC -DPIC -o regsyntax.o
mv -f .deps/regsyntax.Tpo .deps/regsyntax.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regtrav.lo -MD -MP -MF .deps/regtrav.Tpo -c -o regtrav.lo regtrav.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regtrav.lo -MD -MP -MF .deps/regtrav.Tpo -c regtrav.c  -fPIC -DPIC -o regtrav.o
mv -f .deps/regtrav.Tpo .deps/regtrav.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regversion.lo -MD -MP -MF .deps/regversion.Tpo -c -o regversion.lo regversion.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regversion.lo -MD -MP -MF .deps/regversion.Tpo -c regversion.c  -fPIC -DPIC -o regversion.o
mv -f .deps/regversion.Tpo .deps/regversion.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT st.lo -MD -MP -MF .deps/st.Tpo -c -o st.lo st.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT st.lo -MD -MP -MF .deps/st.Tpo -c st.c  -fPIC -DPIC -o st.o
mv -f .deps/st.Tpo .deps/st.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regposix.lo -MD -MP -MF .deps/regposix.Tpo -c -o regposix.lo regposix.c
mv -f .deps/regcomp.Tpo .deps/regcomp.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regposerr.lo -MD -MP -MF .deps/regposerr.Tpo -c -o regposerr.lo regposerr.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regposix.lo -MD -MP -MF .deps/regposix.Tpo -c regposix.c  -fPIC -DPIC -o regposix.o
regposix.c: In function 'regcomp':
regposix.c:154:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   r = onig_new(PONIG_C(reg), (UChar* )pattern, (UChar* )(pattern + len),
   ^
mv -f .deps/regposix.Tpo .deps/regposix.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT unicode.lo -MD -MP -MF .deps/unicode.Tpo -c -o unicode.lo `test -f './enc/unicode.c' || echo './'`./enc/unicode.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regposerr.lo -MD -MP -MF .deps/regposerr.Tpo -c regposerr.c  -fPIC -DPIC -o regposerr.o
mv -f .deps/regposerr.Tpo .deps/regposerr.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT ascii.lo -MD -MP -MF .deps/ascii.Tpo -c -o ascii.lo `test -f './enc/ascii.c' || echo './'`./enc/ascii.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT unicode.lo -MD -MP -MF .deps/unicode.Tpo -c ./enc/unicode.c  -fPIC -DPIC -o unicode.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT ascii.lo -MD -MP -MF .deps/ascii.Tpo -c ./enc/ascii.c  -fPIC -DPIC -o ascii.o
mv -f .deps/ascii.Tpo .deps/ascii.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT utf_8.lo -MD -MP -MF .deps/utf_8.Tpo -c -o utf_8.lo `test -f './enc/utf_8.c' || echo './'`./enc/utf_8.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf_8.lo -MD -MP -MF .deps/utf_8.Tpo -c ./enc/utf_8.c  -fPIC -DPIC -o utf_8.o
mv -f .deps/utf_8.Tpo .deps/utf_8.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT utf_16be.lo -MD -MP -MF .deps/utf_16be.Tpo -c -o utf_16be.lo `test -f './enc/utf_16be.c' || echo './'`./enc/utf_16be.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf_16be.lo -MD -MP -MF .deps/utf_16be.Tpo -c ./enc/utf_16be.c  -fPIC -DPIC -o utf_16be.o
mv -f .deps/utf_16be.Tpo .deps/utf_16be.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT utf_16le.lo -MD -MP -MF .deps/utf_16le.Tpo -c -o utf_16le.lo `test -f './enc/utf_16le.c' || echo './'`./enc/utf_16le.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf_16le.lo -MD -MP -MF .deps/utf_16le.Tpo -c ./enc/utf_16le.c  -fPIC -DPIC -o utf_16le.o
mv -f .deps/regexec.Tpo .deps/regexec.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT utf_32be.lo -MD -MP -MF .deps/utf_32be.Tpo -c -o utf_32be.lo `test -f './enc/utf_32be.c' || echo './'`./enc/utf_32be.c
mv -f .deps/utf_16le.Tpo .deps/utf_16le.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT utf_32le.lo -MD -MP -MF .deps/utf_32le.Tpo -c -o utf_32le.lo `test -f './enc/utf_32le.c' || echo './'`./enc/utf_32le.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf_32le.lo -MD -MP -MF .deps/utf_32le.Tpo -c ./enc/utf_32le.c  -fPIC -DPIC -o utf_32le.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf_32be.lo -MD -MP -MF .deps/utf_32be.Tpo -c ./enc/utf_32be.c  -fPIC -DPIC -o utf_32be.o
mv -f .deps/utf_32le.Tpo .deps/utf_32le.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT euc_jp.lo -MD -MP -MF .deps/euc_jp.Tpo -c -o euc_jp.lo `test -f './enc/euc_jp.c' || echo './'`./enc/euc_jp.c
mv -f .deps/utf_32be.Tpo .deps/utf_32be.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT shift_jis.lo -MD -MP -MF .deps/shift_jis.Tpo -c -o shift_jis.lo `test -f './enc/shift_jis.c' || echo './'`./enc/shift_jis.c
mv -f .deps/regparse.Tpo .deps/regparse.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT windows_31j.lo -MD -MP -MF .deps/windows_31j.Tpo -c -o windows_31j.lo `test -f './enc/windows_31j.c' || echo './'`./enc/windows_31j.c
mv -f .deps/unicode.Tpo .deps/unicode.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_1.lo -MD -MP -MF .deps/iso_8859_1.Tpo -c -o iso_8859_1.lo `test -f './enc/iso_8859_1.c' || echo './'`./enc/iso_8859_1.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT euc_jp.lo -MD -MP -MF .deps/euc_jp.Tpo -c ./enc/euc_jp.c  -fPIC -DPIC -o euc_jp.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT windows_31j.lo -MD -MP -MF .deps/windows_31j.Tpo -c ./enc/windows_31j.c  -fPIC -DPIC -o windows_31j.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT shift_jis.lo -MD -MP -MF .deps/shift_jis.Tpo -c ./enc/shift_jis.c  -fPIC -DPIC -o shift_jis.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_1.lo -MD -MP -MF .deps/iso_8859_1.Tpo -c ./enc/iso_8859_1.c  -fPIC -DPIC -o iso_8859_1.o
mv -f .deps/euc_jp.Tpo .deps/euc_jp.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_2.lo -MD -MP -MF .deps/iso_8859_2.Tpo -c -o iso_8859_2.lo `test -f './enc/iso_8859_2.c' || echo './'`./enc/iso_8859_2.c
mv -f .deps/shift_jis.Tpo .deps/shift_jis.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_3.lo -MD -MP -MF .deps/iso_8859_3.Tpo -c -o iso_8859_3.lo `test -f './enc/iso_8859_3.c' || echo './'`./enc/iso_8859_3.c
mv -f .deps/windows_31j.Tpo .deps/windows_31j.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_4.lo -MD -MP -MF .deps/iso_8859_4.Tpo -c -o iso_8859_4.lo `test -f './enc/iso_8859_4.c' || echo './'`./enc/iso_8859_4.c
mv -f .deps/iso_8859_1.Tpo .deps/iso_8859_1.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_5.lo -MD -MP -MF .deps/iso_8859_5.Tpo -c -o iso_8859_5.lo `test -f './enc/iso_8859_5.c' || echo './'`./enc/iso_8859_5.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_2.lo -MD -MP -MF .deps/iso_8859_2.Tpo -c ./enc/iso_8859_2.c  -fPIC -DPIC -o iso_8859_2.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_3.lo -MD -MP -MF .deps/iso_8859_3.Tpo -c ./enc/iso_8859_3.c  -fPIC -DPIC -o iso_8859_3.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_4.lo -MD -MP -MF .deps/iso_8859_4.Tpo -c ./enc/iso_8859_4.c  -fPIC -DPIC -o iso_8859_4.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_5.lo -MD -MP -MF .deps/iso_8859_5.Tpo -c ./enc/iso_8859_5.c  -fPIC -DPIC -o iso_8859_5.o
mv -f .deps/iso_8859_2.Tpo .deps/iso_8859_2.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_6.lo -MD -MP -MF .deps/iso_8859_6.Tpo -c -o iso_8859_6.lo `test -f './enc/iso_8859_6.c' || echo './'`./enc/iso_8859_6.c
mv -f .deps/iso_8859_4.Tpo .deps/iso_8859_4.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_7.lo -MD -MP -MF .deps/iso_8859_7.Tpo -c -o iso_8859_7.lo `test -f './enc/iso_8859_7.c' || echo './'`./enc/iso_8859_7.c
mv -f .deps/iso_8859_3.Tpo .deps/iso_8859_3.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_8.lo -MD -MP -MF .deps/iso_8859_8.Tpo -c -o iso_8859_8.lo `test -f './enc/iso_8859_8.c' || echo './'`./enc/iso_8859_8.c
mv -f .deps/iso_8859_5.Tpo .deps/iso_8859_5.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_9.lo -MD -MP -MF .deps/iso_8859_9.Tpo -c -o iso_8859_9.lo `test -f './enc/iso_8859_9.c' || echo './'`./enc/iso_8859_9.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_6.lo -MD -MP -MF .deps/iso_8859_6.Tpo -c ./enc/iso_8859_6.c  -fPIC -DPIC -o iso_8859_6.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_8.lo -MD -MP -MF .deps/iso_8859_8.Tpo -c ./enc/iso_8859_8.c  -fPIC -DPIC -o iso_8859_8.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_7.lo -MD -MP -MF .deps/iso_8859_7.Tpo -c ./enc/iso_8859_7.c  -fPIC -DPIC -o iso_8859_7.o
mv -f .deps/iso_8859_6.Tpo .deps/iso_8859_6.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_10.lo -MD -MP -MF .deps/iso_8859_10.Tpo -c -o iso_8859_10.lo `test -f './enc/iso_8859_10.c' || echo './'`./enc/iso_8859_10.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_9.lo -MD -MP -MF .deps/iso_8859_9.Tpo -c ./enc/iso_8859_9.c  -fPIC -DPIC -o iso_8859_9.o
mv -f .deps/iso_8859_8.Tpo .deps/iso_8859_8.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_11.lo -MD -MP -MF .deps/iso_8859_11.Tpo -c -o iso_8859_11.lo `test -f './enc/iso_8859_11.c' || echo './'`./enc/iso_8859_11.c
mv -f .deps/iso_8859_7.Tpo .deps/iso_8859_7.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_13.lo -MD -MP -MF .deps/iso_8859_13.Tpo -c -o iso_8859_13.lo `test -f './enc/iso_8859_13.c' || echo './'`./enc/iso_8859_13.c
mv -f .deps/iso_8859_9.Tpo .deps/iso_8859_9.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_14.lo -MD -MP -MF .deps/iso_8859_14.Tpo -c -o iso_8859_14.lo `test -f './enc/iso_8859_14.c' || echo './'`./enc/iso_8859_14.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_10.lo -MD -MP -MF .deps/iso_8859_10.Tpo -c ./enc/iso_8859_10.c  -fPIC -DPIC -o iso_8859_10.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_11.lo -MD -MP -MF .deps/iso_8859_11.Tpo -c ./enc/iso_8859_11.c  -fPIC -DPIC -o iso_8859_11.o
mv -f .deps/iso_8859_11.Tpo .deps/iso_8859_11.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_15.lo -MD -MP -MF .deps/iso_8859_15.Tpo -c -o iso_8859_15.lo `test -f './enc/iso_8859_15.c' || echo './'`./enc/iso_8859_15.c
mv -f .deps/iso_8859_10.Tpo .deps/iso_8859_10.Plo
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_13.lo -MD -MP -MF .deps/iso_8859_13.Tpo -c ./enc/iso_8859_13.c  -fPIC -DPIC -o iso_8859_13.o
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_16.lo -MD -MP -MF .deps/iso_8859_16.Tpo -c -o iso_8859_16.lo `test -f './enc/iso_8859_16.c' || echo './'`./enc/iso_8859_16.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_14.lo -MD -MP -MF .deps/iso_8859_14.Tpo -c ./enc/iso_8859_14.c  -fPIC -DPIC -o iso_8859_14.o
mv -f .deps/iso_8859_13.Tpo .deps/iso_8859_13.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT euc_tw.lo -MD -MP -MF .deps/euc_tw.Tpo -c -o euc_tw.lo `test -f './enc/euc_tw.c' || echo './'`./enc/euc_tw.c
mv -f .deps/iso_8859_14.Tpo .deps/iso_8859_14.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT euc_kr.lo -MD -MP -MF .deps/euc_kr.Tpo -c -o euc_kr.lo `test -f './enc/euc_kr.c' || echo './'`./enc/euc_kr.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_15.lo -MD -MP -MF .deps/iso_8859_15.Tpo -c ./enc/iso_8859_15.c  -fPIC -DPIC -o iso_8859_15.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_16.lo -MD -MP -MF .deps/iso_8859_16.Tpo -c ./enc/iso_8859_16.c  -fPIC -DPIC -o iso_8859_16.o
mv -f .deps/iso_8859_15.Tpo .deps/iso_8859_15.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT big5.lo -MD -MP -MF .deps/big5.Tpo -c -o big5.lo `test -f './enc/big5.c' || echo './'`./enc/big5.c
mv -f .deps/iso_8859_16.Tpo .deps/iso_8859_16.Plo
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT euc_tw.lo -MD -MP -MF .deps/euc_tw.Tpo -c ./enc/euc_tw.c  -fPIC -DPIC -o euc_tw.o
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT gb18030.lo -MD -MP -MF .deps/gb18030.Tpo -c -o gb18030.lo `test -f './enc/gb18030.c' || echo './'`./enc/gb18030.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT euc_kr.lo -MD -MP -MF .deps/euc_kr.Tpo -c ./enc/euc_kr.c  -fPIC -DPIC -o euc_kr.o
mv -f .deps/euc_tw.Tpo .deps/euc_tw.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT koi8_r.lo -MD -MP -MF .deps/koi8_r.Tpo -c -o koi8_r.lo `test -f './enc/koi8_r.c' || echo './'`./enc/koi8_r.c
mv -f .deps/euc_kr.Tpo .deps/euc_kr.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT koi8_u.lo -MD -MP -MF .deps/koi8_u.Tpo -c -o koi8_u.lo `test -f './enc/koi8_u.c' || echo './'`./enc/koi8_u.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT big5.lo -MD -MP -MF .deps/big5.Tpo -c ./enc/big5.c  -fPIC -DPIC -o big5.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT gb18030.lo -MD -MP -MF .deps/gb18030.Tpo -c ./enc/gb18030.c  -fPIC -DPIC -o gb18030.o
mv -f .deps/big5.Tpo .deps/big5.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT windows_1250.lo -MD -MP -MF .deps/windows_1250.Tpo -c -o windows_1250.lo `test -f './enc/windows_1250.c' || echo './'`./enc/windows_1250.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT koi8_r.lo -MD -MP -MF .deps/koi8_r.Tpo -c ./enc/koi8_r.c  -fPIC -DPIC -o koi8_r.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT koi8_u.lo -MD -MP -MF .deps/koi8_u.Tpo -c ./enc/koi8_u.c  -fPIC -DPIC -o koi8_u.o
mv -f .deps/koi8_r.Tpo .deps/koi8_r.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT windows_1251.lo -MD -MP -MF .deps/windows_1251.Tpo -c -o windows_1251.lo `test -f './enc/windows_1251.c' || echo './'`./enc/windows_1251.c
mv -f .deps/koi8_u.Tpo .deps/koi8_u.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT windows_1252.lo -MD -MP -MF .deps/windows_1252.Tpo -c -o windows_1252.lo `test -f './enc/windows_1252.c' || echo './'`./enc/windows_1252.c
mv -f .deps/gb18030.Tpo .deps/gb18030.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT windows_1253.lo -MD -MP -MF .deps/windows_1253.Tpo -c -o windows_1253.lo `test -f './enc/windows_1253.c' || echo './'`./enc/windows_1253.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT windows_1250.lo -MD -MP -MF .deps/windows_1250.Tpo -c ./enc/windows_1250.c  -fPIC -DPIC -o windows_1250.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT windows_1251.lo -MD -MP -MF .deps/windows_1251.Tpo -c ./enc/windows_1251.c  -fPIC -DPIC -o windows_1251.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT windows_1252.lo -MD -MP -MF .deps/windows_1252.Tpo -c ./enc/windows_1252.c  -fPIC -DPIC -o windows_1252.o
mv -f .deps/windows_1250.Tpo .deps/windows_1250.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT windows_1254.lo -MD -MP -MF .deps/windows_1254.Tpo -c -o windows_1254.lo `test -f './enc/windows_1254.c' || echo './'`./enc/windows_1254.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT windows_1253.lo -MD -MP -MF .deps/windows_1253.Tpo -c ./enc/windows_1253.c  -fPIC -DPIC -o windows_1253.o
mv -f .deps/windows_1251.Tpo .deps/windows_1251.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT windows_1257.lo -MD -MP -MF .deps/windows_1257.Tpo -c -o windows_1257.lo `test -f './enc/windows_1257.c' || echo './'`./enc/windows_1257.c
mv -f .deps/windows_1252.Tpo .deps/windows_1252.Plo
sed -e 's,[@]datadir[@],/usr/share,g' -e 's,[@]datarootdir[@],/usr/share,g' -e 's,[@]PACKAGE_VERSION[@],6.0.0,g' -e 's,[@]prefix[@],/usr,g' -e 's,[@]exec_prefix[@],/usr,g' -e 's,[@]libdir[@],/usr/lib,g' -e 's,[@]includedir[@],/usr/include,g' < ./onigmo.pc.in > onigmo.pc
mv -f .deps/windows_1253.Tpo .deps/windows_1253.Plo
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT windows_1254.lo -MD -MP -MF .deps/windows_1254.Tpo -c ./enc/windows_1254.c  -fPIC -DPIC -o windows_1254.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT windows_1257.lo -MD -MP -MF .deps/windows_1257.Tpo -c ./enc/windows_1257.c  -fPIC -DPIC -o windows_1257.o
mv -f .deps/windows_1254.Tpo .deps/windows_1254.Plo
mv -f .deps/windows_1257.Tpo .deps/windows_1257.Plo
/bin/bash ./libtool  --tag=CC   --mode=link gcc -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -version-info 6:0:0 -no-undefined -Wl,-z,relro -Wl,-z,now -o libonigmo.la -rpath /usr/lib regerror.lo regparse.lo regext.lo regcomp.lo regexec.lo reggnu.lo regenc.lo regsyntax.lo regtrav.lo regversion.lo st.lo regposix.lo regposerr.lo unicode.lo ascii.lo utf_8.lo utf_16be.lo utf_16le.lo utf_32be.lo utf_32le.lo euc_jp.lo shift_jis.lo windows_31j.lo iso_8859_1.lo iso_8859_2.lo iso_8859_3.lo iso_8859_4.lo iso_8859_5.lo iso_8859_6.lo iso_8859_7.lo iso_8859_8.lo iso_8859_9.lo iso_8859_10.lo iso_8859_11.lo iso_8859_13.lo iso_8859_14.lo iso_8859_15.lo iso_8859_16.lo euc_tw.lo euc_kr.lo big5.lo gb18030.lo koi8_r.lo koi8_u.lo windows_1250.lo windows_1251.lo windows_1252.lo windows_1253.lo windows_1254.lo windows_1257.lo  
libtool: link: ar cru .libs/libonigmo.a  regerror.o regparse.o regext.o regcomp.o regexec.o reggnu.o regenc.o regsyntax.o regtrav.o regversion.o st.o regposix.o regposerr.o unicode.o ascii.o utf_8.o utf_16be.o utf_16le.o utf_32be.o utf_32le.o euc_jp.o shift_jis.o windows_31j.o iso_8859_1.o iso_8859_2.o iso_8859_3.o iso_8859_4.o iso_8859_5.o iso_8859_6.o iso_8859_7.o iso_8859_8.o iso_8859_9.o iso_8859_10.o iso_8859_11.o iso_8859_13.o iso_8859_14.o iso_8859_15.o iso_8859_16.o euc_tw.o euc_kr.o big5.o gb18030.o koi8_r.o koi8_u.o windows_1250.o windows_1251.o windows_1252.o windows_1253.o windows_1254.o windows_1257.o
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libonigmo.a
libtool: link: ( cd ".libs" && rm -f "libonigmo.la" && ln -s "../libonigmo.la" "libonigmo.la" )
make[7]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
Making all in sample
make[7]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source/sample'
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT encode.o -MD -MP -MF .deps/encode.Tpo -c -o encode.o encode.c
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT listcap.o -MD -MP -MF .deps/listcap.Tpo -c -o listcap.o listcap.c
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT names.o -MD -MP -MF .deps/names.Tpo -c -o names.o names.c
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT posix.o -MD -MP -MF .deps/posix.Tpo -c -o posix.o posix.c
encode.c: In function 'search':
encode.c:25:31: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                               ^
encode.c:25:35: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                   ^
encode.c: In function 'main':
encode.c:128:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
     ^~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:128:15: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
               ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:130:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
     ^~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:130:15: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
               ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:132:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
     ^~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:132:15: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
               ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:134:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
     ^~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:134:15: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
               ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
listcap.c: In function 'node_callback':
encode.c:136:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
     ^~~~~~~~
listcap.c:23:27: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
   fprintf(stderr, "%d: (%ld-%ld)\n", group, beg, end);
                           ^
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
listcap.c:23:31: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
   fprintf(stderr, "%d: (%ld-%ld)\n", group, beg, end);
                               ^
encode.c:136:15: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
               ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:138:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
     ^~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:138:15: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
               ^~~~~~~
listcap.c: In function 'node_callback_last':
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
listcap.c:40:27: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
   fprintf(stderr, "%d: (%ld-%ld)\n", group, beg, end);
                           ^
listcap.c:40:31: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
   fprintf(stderr, "%d: (%ld-%ld)\n", group, beg, end);
                               ^
encode.c:141:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     " [a-c\337z] ", "  SS  ");
     ^~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:141:21: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     " [a-c\337z] ", "  SS  ");
                     ^~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:143:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     " [\330-\341] ", "  SS  ");
     ^~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:143:22: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     " [\330-\341] ", "  SS  ");
                      ^~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:146:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\337          ", "          Ss          ");
     ^~~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:146:23: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\337          ", "          Ss          ");
                       ^~~~~~~~~~~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:148:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "SS          ", "          \337          ");
     ^~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
listcap.c: In function 'ex':
listcap.c:77:31: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                               ^
encode.c:148:21: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "SS          ", "          \337          ");
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
listcap.c:77:35: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                   ^
encode.c:151:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\\A\\S\\z", "ss");
     ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:151:18: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\\A\\S\\z", "ss");
                  ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:154:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:154:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:157:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:157:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:159:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:159:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:161:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:161:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:163:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:163:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:165:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:165:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:167:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:167:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:169:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:169:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:171:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:171:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:173:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:173:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:175:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:175:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:177:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:177:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:183:59: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_KOI8_R, ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                           ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:183:65: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_KOI8_R, ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                                 ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:184:59: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_KOI8_U, ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                           ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:184:65: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_KOI8_U, ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                                 ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:185:59: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_TW, ONIG_OPTION_IGNORECASE, "b*a+?c+", "bbbaaaccc");
                                                           ^~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:185:70: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_TW, ONIG_OPTION_IGNORECASE, "b*a+?c+", "bbbaaaccc");
                                                                      ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:186:59: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_KR, ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                           ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:186:65: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_KR, ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                                 ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:187:59: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_CN, ONIG_OPTION_IGNORECASE, "c+", "bbbaaaccc");
                                                           ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:187:65: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_CN, ONIG_OPTION_IGNORECASE, "c+", "bbbaaaccc");
                                                                 ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:188:59: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_BIG5,   ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                           ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:188:65: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_BIG5,   ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                                 ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:191:12: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "\337", "SS");
            ^~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:191:20: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "\337", "SS");
                    ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:193:12: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "SS", "\337");
            ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:193:18: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "SS", "\337");
                  ^~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:195:12: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "SSb\337ssc", "a\337bSS\337cd");
            ^~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:195:26: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "SSb\337ssc", "a\337bSS\337cd");
                          ^~~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:197:12: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "[a\337]{0,2}", "aSS");
            ^~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:197:28: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "[a\337]{0,2}", "aSS");
                            ^~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:199:12: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "is", "iss");
            ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:199:18: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "is", "iss");
                  ^~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:202:37: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   ONIG_OPTION_NONE, "a+",
                                     ^~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:203:19: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\000b\000a\000a\000a\000c\000c\000\000");
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:206:37: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   ONIG_OPTION_NONE, "a+",
                                     ^~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:207:19: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "b\000a\000a\000a\000a\000c\000\000\000");
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:211:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\000b\000a\000a\000a\000c\000c\000\000",
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:212:19: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "x\000b\000a\000a\000a\000c\000c\000\000\000");
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:216:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "b\000a\000a\000a\000c\000c\000\000\000",
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:217:19: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\000x\000b\000a\000a\000a\000c\000c\000\000");
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:221:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\000\000\000b\000\000\000a\000\000\000a\000\000\000a\000\000\000c\000\000\000c\000\000\000\000",
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:222:19: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "x\000\000\000b\000\000\000a\000\000\000a\000\000\000a\000\000\000c\000\000\000c\000\000\000\000\000\000\000");
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:226:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "b\000\000\000a\000\000\000a\000\000\000a\000\000\000c\000\000\000c\000\000\000\000\000\000\000",
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:227:19: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\000\000\000x\000\000\000b\000\000\000a\000\000\000a\000\000\000a\000\000\000c\000\000\000c\000\000\000\000");
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:231:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\337", "\000S\000S\000\000");
                   ^~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:231:27: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\337", "\000S\000S\000\000");
                           ^~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:235:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "SS", "\000\337\000\000");
                   ^~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:235:25: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "SS", "\000\337\000\000");
                         ^~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:239:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\337", "S\000S\000\000\000");
                   ^~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:239:27: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\337", "S\000S\000\000\000");
                           ^~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:243:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "SS", "\000\000\000\337\000\000\000\000");
                   ^~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:243:25: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "SS", "\000\000\000\337\000\000\000\000");
                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:247:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\337", "S\000\000\000S\000\000\000\000\000\000\000");
                   ^~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:247:27: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\337", "S\000\000\000S\000\000\000\000\000\000\000");
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:250:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000[\000[\000:\000a\000l\000n\000u\000m\000:\000]\000]\000+\000\000",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:251:12: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "\000#\002\120\000a\000Z\012\077\012\076\012\075\000\000");
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:256:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000\\\000d\000+\000\000",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:257:12: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "\0003\0001\377\020\377\031\377\032\000\000");
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:260:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "(Aa\\d)+", "BaA5Aa0234");
     ^~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:260:17: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "(Aa\\d)+", "BaA5Aa0234");
                 ^~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:264:5: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "^\\P{Hiragana}\\p{^Hiragana}(\\p{Hiragana}+)$",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:265:5: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\060\100\060\240\060\101\060\102\060\226\060\237\000\000");
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:269:5: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000[\000\337\000]\000\000", "\000S\000S\000\000");
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:269:35: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000[\000\337\000]\000\000", "\000S\000S\000\000");
                                   ^~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:273:5: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000[\000\337\000]\000\000", "\000s\000S\000\000");
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:273:35: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000[\000\337\000]\000\000", "\000s\000S\000\000");
                                   ^~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:277:5: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000^\000[\000\001\000-\377\375\000]\000$\000\000",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:278:5: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000s\000S\000\000");
     ^~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:282:5: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000S\000S\000\000",
     ^~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:283:5: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000S\000T\000\337\000\000");
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:287:5: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000S\000T\000S\000S\000\000",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:288:5: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000S\000t\000s\000S\000\000");
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
names.c: In function 'name_callback':
names.c:20:7: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     s = (ref == gn ? "*" : "");
       ^
names.c:22:25: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'OnigPosition {aka int}' [-Wformat=]
     fprintf(stderr, "(%ld-%ld) %s\n", region->beg[gn], region->end[gn], s);
                         ^
names.c:22:29: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
     fprintf(stderr, "(%ld-%ld) %s\n", region->beg[gn], region->end[gn], s);
                             ^
mv -f .deps/posix.Tpo .deps/posix.Po
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT simple.o -MD -MP -MF .deps/simple.Tpo -c -o simple.o simple.c
mv -f .deps/listcap.Tpo .deps/listcap.Po
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT sql.o -MD -MP -MF .deps/sql.Tpo -c -o sql.o sql.c
mv -f .deps/names.Tpo .deps/names.Po
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT syntax.o -MD -MP -MF .deps/syntax.Tpo -c -o syntax.o syntax.c
simple.c: In function 'main':
simple.c:39:31: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                               ^
simple.c:39:35: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                   ^
sql.c: In function 'main':
sql.c:56:31: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                               ^
sql.c:56:35: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                   ^
syntax.c: In function 'exec':
syntax.c:39:31: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                               ^
syntax.c:39:35: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                   ^
syntax.c: In function 'main':
syntax.c:65:5: warning: passing argument 2 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\\p{XDigit}\\P{XDigit}\\p{^XDigit}\\P{^XDigit}\\p{XDigit}",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
syntax.c:8:12: note: expected 'char *' but argument is of type 'const char *'
 extern int exec(const OnigSyntaxType* syntax,
            ^~~~
syntax.c:66:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "bgh3a");
     ^~~~~~~
syntax.c:8:12: note: expected 'char *' but argument is of type 'const char *'
 extern int exec(const OnigSyntaxType* syntax,
            ^~~~
syntax.c:69:5: warning: passing argument 2 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\\p{XDigit}\\P{XDigit}[a-c&&b-g]\\u0020[\\u0021]", "bgc !");
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
syntax.c:8:12: note: expected 'char *' but argument is of type 'const char *'
 extern int exec(const OnigSyntaxType* syntax,
            ^~~~
syntax.c:69:57: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\\p{XDigit}\\P{XDigit}[a-c&&b-g]\\u0020[\\u0021]", "bgc !");
                                                         ^~~~~~~
syntax.c:8:12: note: expected 'char *' but argument is of type 'const char *'
 extern int exec(const OnigSyntaxType* syntax,
            ^~~~
syntax.c:72:12: warning: passing argument 2 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "abc def* e+ g?ddd[a-rvvv] (vv){3,7}hv\\dvv(?:aczui ss)\\W\\w$",
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
syntax.c:8:12: note: expected 'char *' but argument is of type 'const char *'
 extern int exec(const OnigSyntaxType* syntax,
            ^~~~
syntax.c:73:12: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "abc def* e+ g?ddd[a-rvvv] (vv){3,7}hv\\dvv(?:aczui ss)\\W\\w$");
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
syntax.c:8:12: note: expected 'char *' but argument is of type 'const char *'
 extern int exec(const OnigSyntaxType* syntax,
            ^~~~
mv -f .deps/simple.Tpo .deps/simple.Po
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT scan.o -MD -MP -MF .deps/scan.Tpo -c -o scan.o scan.c
mv -f .deps/sql.Tpo .deps/sql.Po
mv -f .deps/encode.Tpo .deps/encode.Po
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT crnl.o -MD -MP -MF .deps/crnl.Tpo -c -o crnl.o crnl.c
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o encode encode.o ../libonigmo.la 
mv -f .deps/syntax.Tpo .deps/syntax.Po
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o listcap listcap.o ../libonigmo.la 
scan.c: In function 'scan_callback':
scan.c:13:28: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'OnigPosition {aka int}' [-Wformat=]
   fprintf(stdout, "scan: %ld\n", n);
                            ^
scan.c:15:31: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'OnigPosition {aka int}' [-Wformat=]
   fprintf(stdout, "match at %ld\n", r);
                               ^
scan.c:17:29: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
     fprintf(stdout, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                             ^
scan.c:17:33: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
     fprintf(stdout, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                 ^
scan.c: In function 'main':
scan.c:81:8: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
        "\\Ga+\\s*", "a aa aaa baaa");
        ^~~~~~~~~~~
scan.c:47:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options, char* apattern, char* astr)
 ^~~~
scan.c:81:21: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
        "\\Ga+\\s*", "a aa aaa baaa");
                     ^~~~~~~~~~~~~~~
scan.c:47:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options, char* apattern, char* astr)
 ^~~~
scan.c:85:8: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
        "a+\\s*", "a aa aaa baaa");
        ^~~~~~~~
scan.c:47:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options, char* apattern, char* astr)
 ^~~~
scan.c:85:18: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
        "a+\\s*", "a aa aaa baaa");
                  ^~~~~~~~~~~~~~~
scan.c:47:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options, char* apattern, char* astr)
 ^~~~
crnl.c: In function 'main':
crnl.c:105:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 1, "",        "\r\n",        0,  0);
         ^~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:105:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 1, "",        "\r\n",        0,  0);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:107:9: warning: passing argument 2 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f( 2, ".",       "\r\n");
         ^~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:107:20: warning: passing argument 3 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f( 2, ".",       "\r\n");
                    ^~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:108:9: warning: passing argument 2 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f( 3, "..",      "\r\n");
         ^~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:108:20: warning: passing argument 3 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f( 3, "..",      "\r\n");
                    ^~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:109:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 4, "^",       "\r\n",        0,  0);
         ^~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:109:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 4, "^",       "\r\n",        0,  0);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:110:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 5, "\\n^",    "\r\nf",       1,  2);
         ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:110:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 5, "\\n^",    "\r\nf",       1,  2);
                    ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:111:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 6, "\\n^a",   "\r\na",       1,  3);
         ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:111:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 6, "\\n^a",   "\r\na",       1,  3);
                    ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:112:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 7, "$",       "\r\n",        0,  0);
         ^~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:112:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 7, "$",       "\r\n",        0,  0);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:113:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 8, "T$",      "T\r\n",       0,  1);
         ^~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:113:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 8, "T$",      "T\r\n",       0,  1);
                    ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:117:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 9, "T$",      "T\raT\r\n",   3,  4);
         ^~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:117:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 9, "T$",      "T\raT\r\n",   3,  4);
                    ^~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:119:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(10, "\\z",     "\r\n",        2,  2);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:119:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(10, "\\z",     "\r\n",        2,  2);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:120:9: warning: passing argument 2 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(11, "a\\z",    "a\r\n");
         ^~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:120:20: warning: passing argument 3 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(11, "a\\z",    "a\r\n");
                    ^~~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:121:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(12, "\\Z",     "\r\n",        0,  0);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:121:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(12, "\\Z",     "\r\n",        0,  0);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:122:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(13, "\\Z",     "\r\na",       3,  3);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:122:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(13, "\\Z",     "\r\na",       3,  3);
                    ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:123:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(14, "\\Z",     "\r\n\r\n\n",  4,  4);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:123:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(14, "\\Z",     "\r\n\r\n\n",  4,  4);
                    ^~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:124:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(15, "\\Z",     "\r\n\r\nX",   5,  5);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:124:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(15, "\\Z",     "\r\n\r\nX",   5,  5);
                    ^~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:125:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(16, "a\\Z",    "a\r\n",       0,  1);
         ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:125:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(16, "a\\Z",    "a\r\n",       0,  1);
                    ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:126:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(17, "aaaaaaaaaaaaaaa\\Z",   "aaaaaaaaaaaaaaa\r\n",  0,  15);
         ^~~~~~~~~~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:126:33: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(17, "aaaaaaaaaaaaaaa\\Z",   "aaaaaaaaaaaaaaa\r\n",  0,  15);
                                 ^~~~~~~~~~~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:127:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(18, "a|$",     "b\r\n",       1,  1);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:127:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(18, "a|$",     "b\r\n",       1,  1);
                    ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:131:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(19, "$|b",     "\rb",         1,  2);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:131:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(19, "$|b",     "\rb",         1,  2);
                    ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:133:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(20, "a$|ab$",  "\r\nab\r\n",  2,  4);
         ^~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:133:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(20, "a$|ab$",  "\r\nab\r\n",  2,  4);
                    ^~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:135:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(21, "a|\\Z",       "b\r\n",       1,  1);
         ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:135:24: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(21, "a|\\Z",       "b\r\n",       1,  1);
                        ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:139:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(22, "\\Z|b",       "\rb",         1,  2);
         ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:139:24: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(22, "\\Z|b",       "\rb",         1,  2);
                        ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:141:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(23, "a\\Z|ab\\Z",  "\r\nab\r\n",  2,  4);
         ^~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:141:24: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(23, "a\\Z|ab\\Z",  "\r\nab\r\n",  2,  4);
                        ^~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:142:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(24, "(?=a$).",     "a\r\n",       0,  1);
         ^~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:142:24: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(24, "(?=a$).",     "a\r\n",       0,  1);
                        ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:147:9: warning: passing argument 2 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(25, "(?=a$).",     "a\r");
         ^~~~~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:147:24: warning: passing argument 3 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(25, "(?=a$).",     "a\r");
                        ^~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:148:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(26, "(?!a$)..",    "a\r",         0,  2);
         ^~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:148:24: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(26, "(?!a$)..",    "a\r",         0,  2);
                        ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:151:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(27, "(?<=a$)\\r\\n", "a\r\n",       1,  3);
         ^~~~~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:151:26: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(27, "(?<=a$)\\r\\n", "a\r\n",       1,  3);
                          ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:153:9: warning: passing argument 2 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(28, "(?<!a$)\\r\\n", "a\r\n");
         ^~~~~~~~~~~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:153:26: warning: passing argument 3 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(28, "(?<!a$)\\r\\n", "a\r\n");
                          ^~~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:154:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(29, "(?=a\\Z).",     "a\r\n",       0,  1);
         ^~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:154:26: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(29, "(?=a\\Z).",     "a\r\n",       0,  1);
                          ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:159:9: warning: passing argument 2 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(30, "(?=a\\Z).",     "a\r");
         ^~~~~~~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:159:26: warning: passing argument 3 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(30, "(?=a\\Z).",     "a\r");
                          ^~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:160:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(31, "(?!a\\Z)..",    "a\r",         0,  2);
         ^~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:160:26: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(31, "(?!a\\Z)..",    "a\r",         0,  2);
                          ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:163:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(32, ".*$",     "aa\r\n",      0,  2);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:163:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(32, ".*$",     "aa\r\n",      0,  2);
                    ^~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:167:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(33, ".*$",     "aa\r",        0,  3);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:167:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(33, ".*$",     "aa\r",        0,  3);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:169:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(34, "\\R{3}",  "\r\r\n\n",    0,  4);
         ^~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:169:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(34, "\\R{3}",  "\r\r\n\n",    0,  4);
                    ^~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:170:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(35, "$",       "\n",          0,  0);
         ^~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:170:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(35, "$",       "\n",          0,  0);
                    ^~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:171:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(36, "T$",      "T\n",         0,  1);
         ^~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:171:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(36, "T$",      "T\n",         0,  1);
                    ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:172:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(37, "(?m).",   "\r\n",        0,  1);
         ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:172:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(37, "(?m).",   "\r\n",        0,  1);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:173:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(38, "(?m)..",  "\r\n",        0,  2);
         ^~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:173:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(38, "(?m)..",  "\r\n",        0,  2);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:174:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(39, "^",      "\n.",     1,  1,  1,  0);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:174:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(39, "^",      "\n.",     1,  1,  1,  0);
                    ^~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:175:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(40, "^",      "\r\n.",   1,  2,  2,  0);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:175:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(40, "^",      "\r\n.",   1,  2,  2,  0);
                    ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:176:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(41, "^",      "\r\n.",   2,  2,  2,  0);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:176:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(41, "^",      "\r\n.",   2,  2,  2,  0);
                    ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:177:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(42, "$",      "\n\n",    1,  1,  1,  0);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:177:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(42, "$",      "\n\n",    1,  1,  1,  0);
                    ^~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:178:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(43, "$",      "\r\n\n",  1,  2,  2,  0);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:178:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(43, "$",      "\r\n\n",  1,  2,  2,  0);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:179:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(44, "$",      "\r\n\n",  2,  2,  2,  0);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:179:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(44, "$",      "\r\n\n",  2,  2,  2,  0);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:183:10: warning: passing argument 2 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(45, "^$",     "\n\r",    1,  0);
          ^~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:183:20: warning: passing argument 3 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(45, "^$",     "\n\r",    1,  0);
                    ^~~~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:185:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(46, "^$",     "\n\r\n",  1,  1,  1,  0);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:185:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(46, "^$",     "\n\r\n",  1,  1,  1,  0);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:186:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(47, "^$",     "\r\n\n",  1,  2,  2,  0);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:186:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(47, "^$",     "\r\n\n",  1,  2,  2,  0);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:187:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(48, "\\Z",    "\r\n\n",  1,  2,  2,  0);
          ^~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:187:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(48, "\\Z",    "\r\n\n",  1,  2,  2,  0);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:188:10: warning: passing argument 2 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(49, ".(?=\\Z)", "\r\n",  1,  0);
          ^~~~~~~~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:188:22: warning: passing argument 3 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(49, ".(?=\\Z)", "\r\n",  1,  0);
                      ^~~~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:189:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(50, "(?=\\Z)", "\r\n",   1,  2,  2,  0);
          ^~~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:189:21: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(50, "(?=\\Z)", "\r\n",   1,  2,  2,  0);
                     ^~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:190:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(51, "(?<=^).", "\r\n.",  0,  2,  3,  0);
          ^~~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:190:21: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(51, "(?<=^).", "\r\n.",  0,  2,  3,  0);
                     ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:191:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(52, "(?<=^).", "\r\n.",  1,  2,  3,  0);
          ^~~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:191:21: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(52, "(?<=^).", "\r\n.",  1,  2,  3,  0);
                     ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:192:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(53, "(?<=^).", "\r\n.",  2,  2,  3,  0);
          ^~~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:192:21: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(53, "(?<=^).", "\r\n.",  2,  2,  3,  0);
                     ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:193:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(54, "^a",      "\r\na",  0,  2,  3,  0);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:193:21: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(54, "^a",      "\r\na",  0,  2,  3,  0);
                     ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:194:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(55, "^a",      "\r\na",  1,  2,  3,  0);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:194:21: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(55, "^a",      "\r\na",  1,  2,  3,  0);
                     ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:195:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(56, "(?m)$.{1,2}a", "\r\na", 0,  0,  3,  0);
          ^~~~~~~~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:195:26: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(56, "(?m)$.{1,2}a", "\r\na", 0,  0,  3,  0);
                          ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:196:10: warning: passing argument 2 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(57, "(?m)$.{1,2}a", "\r\na", 1,  0);
          ^~~~~~~~~~~~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:196:26: warning: passing argument 3 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(57, "(?m)$.{1,2}a", "\r\na", 1,  0);
                          ^~~~~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:197:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(58, ".*b",      "\r\naaab\r\n",  1,  2,  6,  0);
          ^~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:197:22: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(58, ".*b",      "\r\naaab\r\n",  1,  2,  6,  0);
                      ^~~~~~~~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:201:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(60, "$",      "\n\n",   -1,  1,  1,  1);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:201:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(60, "$",      "\n\n",   -1,  1,  1,  1);
                    ^~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:202:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(61, "$",      "\n\r\n", -1,  1,  1,  1);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:202:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(61, "$",      "\n\r\n", -1,  1,  1,  1);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:203:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(62, "$",      "\n\r\n", -2,  1,  1,  1);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:203:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(62, "$",      "\n\r\n", -2,  1,  1,  1);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:204:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(63, "^$",     "\n\r\n", -1,  1,  1,  1);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:204:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(63, "^$",     "\n\r\n", -1,  1,  1,  1);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:205:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(64, "^$",     "\n\r\n",  0,  1,  1,  1);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:205:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(64, "^$",     "\n\r\n",  0,  1,  1,  1);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:206:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(65, "^$",     "\r\n\n",  0,  2,  2,  1);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:206:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(65, "^$",     "\r\n\n",  0,  2,  2,  1);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:207:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(66, "^a",     "\r\na",   0,  2,  3,  1);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:207:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(66, "^a",     "\r\na",   0,  2,  3,  1);
                    ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:209:10: warning: passing argument 2 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(67, "^a",     "\r\na",  -1,  1); /* This should not match after the fix of Issue #22. */
          ^~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:209:20: warning: passing argument 3 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(67, "^a",     "\r\na",  -1,  1); /* This should not match after the fix of Issue #22. */
                    ^~~~~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:210:10: warning: passing argument 2 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(68, "^a",     "\r\na",  -2,  1);
          ^~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:210:20: warning: passing argument 3 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(68, "^a",     "\r\na",  -2,  1);
                    ^~~~~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
mv -f .deps/scan.Tpo .deps/scan.Po
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o names names.o ../libonigmo.la 
mv -f .deps/crnl.Tpo .deps/crnl.Po
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o posix posix.o ../libonigmo.la 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o listcap listcap.o  ../.libs/libonigmo.a
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o encode encode.o  ../.libs/libonigmo.a
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o simple simple.o ../libonigmo.la 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o names names.o  ../.libs/libonigmo.a
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o sql sql.o ../libonigmo.la 
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o syntax syntax.o ../libonigmo.la 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o posix posix.o  ../.libs/libonigmo.a
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o scan scan.o ../libonigmo.la 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o simple simple.o  ../.libs/libonigmo.a
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o sql sql.o  ../.libs/libonigmo.a
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o crnl crnl.o ../libonigmo.la 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o syntax syntax.o  ../.libs/libonigmo.a
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o scan scan.o  ../.libs/libonigmo.a
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o crnl crnl.o  ../.libs/libonigmo.a
make[7]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source/sample'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo'
Making all in mecab
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/mecab'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mecab'
Making all in message_pack
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/message_pack'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/message_pack'
Making all in mruby
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/mruby'
make  all-am
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/mruby'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mrblib.lo mrblib.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mrbgems_init.lo mrbgems_init.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/array.lo ../mruby-source/src/array.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/backtrace.lo ../mruby-source/src/backtrace.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mrblib.c  -fPIC -DPIC -o .libs/mrblib.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mrbgems_init.c  -fPIC -DPIC -o .libs/mrbgems_init.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/array.c  -fPIC -DPIC -o ../mruby-source/src/.libs/array.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/backtrace.c  -fPIC -DPIC -o ../mruby-source/src/.libs/backtrace.o
../mruby-source/src/array.c: In function 'ary_new_capa':
../mruby-source/src/array.c:42:7: warning: cast increases required alignment of target type [-Wcast-align]
   a = (struct RArray*)mrb_obj_alloc(mrb, MRB_TT_ARRAY, mrb->array_class);
       ^
../mruby-source/src/array.c: In function 'ary_subseq':
../mruby-source/src/array.c:639:8: warning: cast increases required alignment of target type [-Wcast-align]
   b  = (struct RArray*)mrb_obj_alloc(mrb, MRB_TT_ARRAY, mrb->array_class);
        ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/class.lo ../mruby-source/src/class.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/codedump.lo ../mruby-source/src/codedump.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/class.c  -fPIC -DPIC -o ../mruby-source/src/.libs/class.o
In file included from ./../mruby-source/include/mruby/proc.h:73:0,
                 from ../mruby-source/src/class.c:12:
../mruby-source/src/class.c: In function 'kh_alloc_mt':
./../mruby-source/include/mruby/khash.h:104:15: warning: cast increases required alignment of target type [-Wcast-align]
     h->keys = (khkey_t *)p;                                             \
               ^
../mruby-source/src/class.c:18:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE(mt, mrb_sym, struct RProc*, TRUE, kh_int_hash_func, kh_int_hash_equal)
 ^~~~~~~~~~~~
./../mruby-source/include/mruby/khash.h:105:27: warning: cast increases required alignment of target type [-Wcast-align]
     h->vals = kh_is_map ? (khval_t *)(p+sizeof(khkey_t)*sz) : NULL;     \
                           ^
../mruby-source/src/class.c:18:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE(mt, mrb_sym, struct RProc*, TRUE, kh_int_hash_func, kh_int_hash_equal)
 ^~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/codedump.c  -fPIC -DPIC -o ../mruby-source/src/.libs/codedump.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/compar.lo ../mruby-source/src/compar.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/crc.lo ../mruby-source/src/crc.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/debug.lo ../mruby-source/src/debug.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/compar.c  -fPIC -DPIC -o ../mruby-source/src/.libs/compar.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/dump.lo ../mruby-source/src/dump.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/crc.c  -fPIC -DPIC -o ../mruby-source/src/.libs/crc.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/debug.c  -fPIC -DPIC -o ../mruby-source/src/.libs/debug.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/enum.lo ../mruby-source/src/enum.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/dump.c  -fPIC -DPIC -o ../mruby-source/src/.libs/dump.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/error.lo ../mruby-source/src/error.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/enum.c  -fPIC -DPIC -o ../mruby-source/src/.libs/enum.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/etc.lo ../mruby-source/src/etc.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/error.c  -fPIC -DPIC -o ../mruby-source/src/.libs/error.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/etc.c  -fPIC -DPIC -o ../mruby-source/src/.libs/etc.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/fmt_fp.lo ../mruby-source/src/fmt_fp.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/fmt_fp.c  -fPIC -DPIC -o ../mruby-source/src/.libs/fmt_fp.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/gc.lo ../mruby-source/src/gc.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/hash.lo ../mruby-source/src/hash.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/init.lo ../mruby-source/src/init.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/hash.c  -fPIC -DPIC -o ../mruby-source/src/.libs/hash.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/gc.c  -fPIC -DPIC -o ../mruby-source/src/.libs/gc.o
In file included from ./../mruby-source/include/mruby/hash.h:11:0,
                 from ../mruby-source/src/hash.c:10:
../mruby-source/src/hash.c: In function 'kh_alloc_ht':
./../mruby-source/include/mruby/khash.h:104:15: warning: cast increases required alignment of target type [-Wcast-align]
     h->keys = (khkey_t *)p;                                             \
               ^
../mruby-source/src/hash.c:94:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE (ht, mrb_value, mrb_hash_value, TRUE, mrb_hash_ht_hash_func, mrb_hash_ht_hash_equal)
 ^~~~~~~~~~~~
./../mruby-source/include/mruby/khash.h:105:27: warning: cast increases required alignment of target type [-Wcast-align]
     h->vals = kh_is_map ? (khval_t *)(p+sizeof(khkey_t)*sz) : NULL;     \
                           ^
../mruby-source/src/hash.c:94:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE (ht, mrb_value, mrb_hash_value, TRUE, mrb_hash_ht_hash_func, mrb_hash_ht_hash_equal)
 ^~~~~~~~~~~~
../mruby-source/src/gc.c: In function 'add_heap':
../mruby-source/src/gc.c:194:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:328:12: note: in expansion of macro 'objects'
   for (p = objects(page), e=p+MRB_HEAP_PAGE_SIZE; p<e; p++) {
            ^~~~~~~
../mruby-source/src/gc.c:328:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   for (p = objects(page), e=p+MRB_HEAP_PAGE_SIZE; p<e; p++) {
   ^~~
../mruby-source/src/gc.c: In function 'free_heap':
../mruby-source/src/gc.c:194:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:382:14: note: in expansion of macro 'objects'
     for (p = objects(tmp), e=p+MRB_HEAP_PAGE_SIZE; p<e; p++) {
              ^~~~~~~
../mruby-source/src/gc.c:382:5: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     for (p = objects(tmp), e=p+MRB_HEAP_PAGE_SIZE; p<e; p++) {
     ^~~
../mruby-source/src/gc.c: In function 'mrb_obj_alloc':
../mruby-source/src/gc.c:500:4: warning: cast increases required alignment of target type [-Wcast-align]
   *(RVALUE *)p = RVALUE_zero;
    ^
../mruby-source/src/gc.c: In function 'gc_mark_children':
../mruby-source/src/gc.c:638:26: warning: cast increases required alignment of target type [-Wcast-align]
       struct RArray *a = (struct RArray*)obj;
                          ^
../mruby-source/src/gc.c: In function 'obj_free':
../mruby-source/src/gc.c:751:28: warning: cast increases required alignment of target type [-Wcast-align]
       mrb_ary_decref(mrb, ((struct RArray*)obj)->aux.shared);
                            ^
../mruby-source/src/gc.c:753:22: warning: cast increases required alignment of target type [-Wcast-align]
       mrb_free(mrb, ((struct RArray*)obj)->ptr);
                      ^
../mruby-source/src/gc.c:762:26: warning: cast increases required alignment of target type [-Wcast-align]
     mrb_gc_free_str(mrb, (struct RString*)obj);
                          ^
../mruby-source/src/gc.c: In function 'gc_gray_mark':
../mruby-source/src/gc.c:889:26: warning: cast increases required alignment of target type [-Wcast-align]
       struct RArray *a = (struct RArray*)obj;
                          ^
../mruby-source/src/gc.c: In function 'incremental_sweep_phase':
../mruby-source/src/gc.c:194:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:961:17: note: in expansion of macro 'objects'
     RVALUE *p = objects(page);
                 ^~~~~~~
../mruby-source/src/gc.c:961:5: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     RVALUE *p = objects(page);
     ^~~~~~
../mruby-source/src/gc.c: In function 'gc_each_objects':
../mruby-source/src/gc.c:194:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:1430:9: note: in expansion of macro 'objects'
     p = objects(page);
         ^~~~~~~
../mruby-source/src/gc.c:1430:5: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     p = objects(page);
     ^
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/init.c  -fPIC -DPIC -o ../mruby-source/src/.libs/init.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/kernel.lo ../mruby-source/src/kernel.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/load.lo ../mruby-source/src/load.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/kernel.c  -fPIC -DPIC -o ../mruby-source/src/.libs/kernel.o
In file included from ./../mruby-source/include/mruby/proc.h:73:0,
                 from ../mruby-source/src/kernel.c:10:
../mruby-source/src/kernel.c: In function 'kh_alloc_st':
./../mruby-source/include/mruby/khash.h:104:15: warning: cast increases required alignment of target type [-Wcast-align]
     h->keys = (khkey_t *)p;                                             \
               ^
../mruby-source/src/kernel.c:636:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE(st, mrb_sym, char, FALSE, kh_int_hash_func, kh_int_hash_equal)
 ^~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/load.c  -fPIC -DPIC -o ../mruby-source/src/.libs/load.o
../mruby-source/src/load.c: In function 'read_irep_record_1':
../mruby-source/src/load.c:81:20: warning: cast increases required alignment of target type [-Wcast-align]
       irep->iseq = (mrb_code*)src;
                    ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/numeric.lo ../mruby-source/src/numeric.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/object.lo ../mruby-source/src/object.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/numeric.c  -fPIC -DPIC -o ../mruby-source/src/.libs/numeric.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/object.c  -fPIC -DPIC -o ../mruby-source/src/.libs/object.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/pool.lo ../mruby-source/src/pool.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/print.lo ../mruby-source/src/print.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/pool.c  -fPIC -DPIC -o ../mruby-source/src/.libs/pool.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/proc.lo ../mruby-source/src/proc.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/print.c  -fPIC -DPIC -o ../mruby-source/src/.libs/print.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/range.lo ../mruby-source/src/range.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/state.lo ../mruby-source/src/state.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/proc.c  -fPIC -DPIC -o ../mruby-source/src/.libs/proc.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/range.c  -fPIC -DPIC -o ../mruby-source/src/.libs/range.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/state.c  -fPIC -DPIC -o ../mruby-source/src/.libs/state.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/string.lo ../mruby-source/src/string.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/symbol.lo ../mruby-source/src/symbol.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/variable.lo ../mruby-source/src/variable.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/string.c  -fPIC -DPIC -o ../mruby-source/src/.libs/string.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/version.lo ../mruby-source/src/version.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/symbol.c  -fPIC -DPIC -o ../mruby-source/src/.libs/symbol.o
../mruby-source/src/string.c: In function 'str_new_static':
../mruby-source/src/string.c:39:11: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (len >= MRB_INT_MAX) {
           ^~
../mruby-source/src/string.c:32:36: warning: cast increases required alignment of target type [-Wcast-align]
 #define mrb_obj_alloc_string(mrb) ((struct RString*)mrb_obj_alloc((mrb), MRB_TT_STRING, (mrb)->string_class))
                                    ^
../mruby-source/src/string.c:42:7: note: in expansion of macro 'mrb_obj_alloc_string'
   s = mrb_obj_alloc_string(mrb);
       ^~~~~~~~~~~~~~~~~~~~
../mruby-source/src/string.c: In function 'str_new':
../mruby-source/src/string.c:32:36: warning: cast increases required alignment of target type [-Wcast-align]
 #define mrb_obj_alloc_string(mrb) ((struct RString*)mrb_obj_alloc((mrb), MRB_TT_STRING, (mrb)->string_class))
                                    ^
../mruby-source/src/string.c:59:7: note: in expansion of macro 'mrb_obj_alloc_string'
   s = mrb_obj_alloc_string(mrb);
       ^~~~~~~~~~~~~~~~~~~~
../mruby-source/src/string.c:67:13: warning: comparison is always false due to limited range of data type [-Wtype-limits]
     if (len >= MRB_INT_MAX) {
             ^~
../mruby-source/src/string.c: In function 'mrb_str_buf_new':
../mruby-source/src/string.c:32:36: warning: cast increases required alignment of target type [-Wcast-align]
 #define mrb_obj_alloc_string(mrb) ((struct RString*)mrb_obj_alloc((mrb), MRB_TT_STRING, (mrb)->string_class))
                                    ^
../mruby-source/src/string.c:105:7: note: in expansion of macro 'mrb_obj_alloc_string'
   s = mrb_obj_alloc_string(mrb);
       ^~~~~~~~~~~~~~~~~~~~
../mruby-source/src/string.c:107:12: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (capa >= MRB_INT_MAX) {
            ^~
../mruby-source/src/string.c: In function 'str_buf_cat':
../mruby-source/src/string.c:165:20: warning: comparison is always false due to limited range of data type [-Wtype-limits]
       if (capa + 1 >= MRB_INT_MAX / 2) {
                    ^~
../mruby-source/src/string.c: In function 'byte_subseq':
../mruby-source/src/string.c:32:36: warning: cast increases required alignment of target type [-Wcast-align]
 #define mrb_obj_alloc_string(mrb) ((struct RString*)mrb_obj_alloc((mrb), MRB_TT_STRING, (mrb)->string_class))
                                    ^
../mruby-source/src/string.c:425:9: note: in expansion of macro 'mrb_obj_alloc_string'
     s = mrb_obj_alloc_string(mrb);
         ^~~~~~~~~~~~~~~~~~~~
In file included from ../mruby-source/src/symbol.c:10:0:
../mruby-source/src/symbol.c: In function 'kh_alloc_n2s':
./../mruby-source/include/mruby/khash.h:104:15: warning: cast increases required alignment of target type [-Wcast-align]
     h->keys = (khkey_t *)p;                                             \
               ^
../mruby-source/src/symbol.c:36:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE (n2s, mrb_sym, mrb_sym, FALSE, sym_hash_func, sym_hash_equal)
 ^~~~~~~~~~~~
./../mruby-source/include/mruby/khash.h:105:27: warning: cast increases required alignment of target type [-Wcast-align]
     h->vals = kh_is_map ? (khval_t *)(p+sizeof(khkey_t)*sz) : NULL;     \
                           ^
../mruby-source/src/symbol.c:36:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE (n2s, mrb_sym, mrb_sym, FALSE, sym_hash_func, sym_hash_equal)
 ^~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/variable.c  -fPIC -DPIC -o ../mruby-source/src/.libs/variable.o
In file included from ./../mruby-source/include/mruby/proc.h:73:0,
                 from ../mruby-source/src/variable.c:10:
../mruby-source/src/variable.c: In function 'kh_alloc_iv':
./../mruby-source/include/mruby/khash.h:104:15: warning: cast increases required alignment of target type [-Wcast-align]
     h->keys = (khkey_t *)p;                                             \
               ^
../mruby-source/src/variable.c:292:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE(iv, mrb_sym, mrb_value, TRUE, kh_int_hash_func, kh_int_hash_equal)
 ^~~~~~~~~~~~
./../mruby-source/include/mruby/khash.h:105:27: warning: cast increases required alignment of target type [-Wcast-align]
     h->vals = kh_is_map ? (khval_t *)(p+sizeof(khkey_t)*sz) : NULL;     \
                           ^
../mruby-source/src/variable.c:292:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE(iv, mrb_sym, mrb_value, TRUE, kh_int_hash_func, kh_int_hash_equal)
 ^~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/version.c  -fPIC -DPIC -o ../mruby-source/src/.libs/version.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/vm.lo ../mruby-source/src/vm.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/vm.c  -fPIC -DPIC -o ../mruby-source/src/.libs/vm.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-compiler/core/codegen.lo ../mruby-source/mrbgems/mruby-compiler/core/codegen.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-compiler/core/codegen.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-compiler/core/.libs/codegen.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-sprintf/src/kernel.lo ../mruby-source/mrbgems/mruby-sprintf/src/kernel.c
../mruby-source/src/vm.c: In function 'mrb_funcall_with_block':
../mruby-source/src/vm.c:323:64: warning: argument 'mid' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
 mrb_funcall_with_block(mrb_state *mrb, mrb_value self, mrb_sym mid, mrb_int argc, const mrb_value *argv, mrb_value blk)
                                                                ^~~
../mruby-source/src/vm.c:323:77: warning: argument 'argc' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
 mrb_funcall_with_block(mrb_state *mrb, mrb_value self, mrb_sym mid, mrb_int argc, const mrb_value *argv, mrb_value blk)
                                                                             ^~~~
../mruby-source/src/vm.c:323:100: warning: argument 'argv' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
 mrb_funcall_with_block(mrb_state *mrb, mrb_value self, mrb_sym mid, mrb_int argc, const mrb_value *argv, mrb_value blk)
                                                                                                    ^~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-sprintf/src/kernel.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-sprintf/src/.libs/kernel.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-sprintf/src/sprintf.lo ../mruby-source/mrbgems/mruby-sprintf/src/sprintf.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-sprintf/src/sprintf.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-sprintf/src/.libs/sprintf.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-print/src/print.lo ../mruby-source/mrbgems/mruby-print/src/print.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-print/src/print.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-print/src/.libs/print.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-math/src/math.lo ../mruby-source/mrbgems/mruby-math/src/math.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-math/src/math.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-math/src/.libs/math.o
../mruby-source/src/vm.c: In function 'mrb_vm_exec':
../mruby-source/src/vm.c:770:43: warning: argument 'proc' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
 mrb_vm_exec(mrb_state *mrb, struct RProc *proc, mrb_code *pc)
                                           ^~~~
../mruby-source/src/vm.c:770:59: warning: argument 'pc' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
 mrb_vm_exec(mrb_state *mrb, struct RProc *proc, mrb_code *pc)
                                                           ^~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-time/src/time.lo ../mruby-source/mrbgems/mruby-time/src/time.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-struct/src/struct.lo ../mruby-source/mrbgems/mruby-struct/src/struct.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-time/src/time.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-time/src/.libs/time.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-struct/src/struct.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-struct/src/.libs/struct.o
../mruby-source/mrbgems/mruby-time/src/time.c: In function 'mrb_time_to_i':
../mruby-source/mrbgems/mruby-time/src/time.c:704:15: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (tm->sec > MRB_INT_MAX || tm->sec < MRB_INT_MIN) {
               ^
../mruby-source/mrbgems/mruby-time/src/time.c:704:40: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (tm->sec > MRB_INT_MAX || tm->sec < MRB_INT_MIN) {
                                        ^
../mruby-source/mrbgems/mruby-time/src/time.c: In function 'mrb_time_usec':
../mruby-source/mrbgems/mruby-time/src/time.c:718:16: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (tm->usec > MRB_INT_MAX || tm->usec < MRB_INT_MIN) {
                ^
../mruby-source/mrbgems/mruby-time/src/time.c:718:42: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (tm->usec > MRB_INT_MAX || tm->usec < MRB_INT_MIN) {
                                          ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-string-ext/src/string.lo ../mruby-source/mrbgems/mruby-string-ext/src/string.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-numeric-ext/src/numeric_ext.lo ../mruby-source/mrbgems/mruby-numeric-ext/src/numeric_ext.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-string-ext/src/string.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-string-ext/src/.libs/string.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-array-ext/src/array.lo ../mruby-source/mrbgems/mruby-array-ext/src/array.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-numeric-ext/src/numeric_ext.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-numeric-ext/src/.libs/numeric_ext.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-array-ext/src/array.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-array-ext/src/.libs/array.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-hash-ext/src/hash-ext.lo ../mruby-source/mrbgems/mruby-hash-ext/src/hash-ext.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-range-ext/src/range.lo ../mruby-source/mrbgems/mruby-range-ext/src/range.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-hash-ext/src/hash-ext.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-hash-ext/src/.libs/hash-ext.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-proc-ext/src/proc.lo ../mruby-source/mrbgems/mruby-proc-ext/src/proc.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-proc-ext/test/proc.lo ../mruby-source/mrbgems/mruby-proc-ext/test/proc.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-range-ext/src/range.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-range-ext/src/.libs/range.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-proc-ext/src/proc.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-proc-ext/src/.libs/proc.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-proc-ext/test/proc.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-proc-ext/test/.libs/proc.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-symbol-ext/src/symbol.lo ../mruby-source/mrbgems/mruby-symbol-ext/src/symbol.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-random/src/mt19937ar.lo ../mruby-source/mrbgems/mruby-random/src/mt19937ar.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-random/src/random.lo ../mruby-source/mrbgems/mruby-random/src/random.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-symbol-ext/src/symbol.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-symbol-ext/src/.libs/symbol.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-random/src/mt19937ar.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-random/src/.libs/mt19937ar.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-random/src/random.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-random/src/.libs/random.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-object-ext/src/object.lo ../mruby-source/mrbgems/mruby-object-ext/src/object.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-objectspace/src/mruby_objectspace.lo ../mruby-source/mrbgems/mruby-objectspace/src/mruby_objectspace.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-object-ext/src/object.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-object-ext/src/.libs/object.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-objectspace/src/mruby_objectspace.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-objectspace/src/.libs/mruby_objectspace.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-fiber/src/fiber.lo ../mruby-source/mrbgems/mruby-fiber/src/fiber.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-kernel-ext/src/kernel.lo ../mruby-source/mrbgems/mruby-kernel-ext/src/kernel.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-fiber/src/fiber.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-fiber/src/.libs/fiber.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-compiler/core/parse.lo mruby-compiler/core/parse.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-kernel-ext/src/kernel.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-kernel-ext/src/.libs/kernel.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-compiler/core/parse.c  -fPIC -DPIC -o mruby-compiler/core/.libs/parse.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-onig-regexp/src/mruby_onig_regexp.lo mruby-onig-regexp/src/mruby_onig_regexp.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-env/src/env.lo mruby-env/src/env.c
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_int':
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:725:33: warning: cast increases required alignment of target type [-Wcast-align]
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:158:40: note: in definition of macro 'list3'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_float':
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:732:34: warning: cast increases required alignment of target type [-Wcast-align]
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_str':
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:739:37: warning: cast increases required alignment of target type [-Wcast-align]
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:739:32: note: in expansion of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_xstr':
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:753:38: warning: cast increases required alignment of target type [-Wcast-align]
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:753:33: note: in expansion of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_regx':
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:38: warning: cast increases required alignment of target type [-Wcast-align]
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:33: note: in expansion of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:54: warning: cast increases required alignment of target type [-Wcast-align]
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:33: note: in expansion of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:49: note: in expansion of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:65: warning: cast increases required alignment of target type [-Wcast-align]
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:33: note: in expansion of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:49: note: in expansion of macro 'cons'
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-onig-regexp/src/mruby_onig_regexp.c  -fPIC -DPIC -o mruby-onig-regexp/src/.libs/mruby_onig_regexp.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-env/src/env.c  -fPIC -DPIC -o mruby-env/src/.libs/env.o
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'onig_regexp_match':
mruby-onig-regexp/src/mruby_onig_regexp.c:193:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'onig_regexp_equal':
mruby-onig-regexp/src/mruby_onig_regexp.c:215:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_regexp_type, self_reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c:216:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, other, &mrb_onig_regexp_type, other_reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'onig_regexp_casefold_p':
mruby-onig-regexp/src/mruby_onig_regexp.c:232:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'onig_regexp_options':
mruby-onig-regexp/src/mruby_onig_regexp.c:239:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'onig_regexp_inspect':
mruby-onig-regexp/src/mruby_onig_regexp.c:300:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'onig_regexp_to_s':
mruby-onig-regexp/src/mruby_onig_regexp.c:325:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_begin':
mruby-onig-regexp/src/mruby_onig_regexp.c:459:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_end':
mruby-onig-regexp/src/mruby_onig_regexp.c:478:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_copy':
mruby-onig-regexp/src/mruby_onig_regexp.c:491:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, src_val, &mrb_onig_region_type, src);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_length':
mruby-onig-regexp/src/mruby_onig_regexp.c:508:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_offset':
mruby-onig-regexp/src/mruby_onig_regexp.c:518:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_post_match':
mruby-onig-regexp/src/mruby_onig_regexp.c:531:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_pre_match':
mruby-onig-regexp/src/mruby_onig_regexp.c:540:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_to_a':
mruby-onig-regexp/src/mruby_onig_regexp.c:566:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_to_s':
mruby-onig-regexp/src/mruby_onig_regexp.c:586:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'string_gsub':
mruby-onig-regexp/src/mruby_onig_regexp.c:661:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, match_expr, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'string_scan':
mruby-onig-regexp/src/mruby_onig_regexp.c:700:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, match_expr, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'string_split':
mruby-onig-regexp/src/mruby_onig_regexp.c:759:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, pattern, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'string_sub':
mruby-onig-regexp/src/mruby_onig_regexp.c:824:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, match_expr, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-io/src/file.lo mruby-io/src/file.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-io/src/file.c  -fPIC -DPIC -o mruby-io/src/.libs/file.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-io/src/file_test.lo mruby-io/src/file_test.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-io/src/file_test.c  -fPIC -DPIC -o mruby-io/src/.libs/file_test.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-io/src/io.lo mruby-io/src/io.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-io/src/mruby_io_gem.lo mruby-io/src/mruby_io_gem.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-io/src/io.c  -fPIC -DPIC -o mruby-io/src/.libs/io.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-io/src/mruby_io_gem.c  -fPIC -DPIC -o mruby-io/src/.libs/mruby_io_gem.o
mruby-io/src/io.c: In function 'mrb_io_sysseek':
mruby-io/src/io.c:672:11: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (pos > MRB_INT_MAX) {
           ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-file-stat/src/file-stat.lo mruby-file-stat/src/file-stat.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-file-stat/src/file-stat.c  -fPIC -DPIC -o mruby-file-stat/src/.libs/file-stat.o
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast  -Wl,-z,relro -Wl,-z,now -o libmruby.la  ../mruby-source/src/array.lo ../mruby-source/src/backtrace.lo ../mruby-source/src/class.lo ../mruby-source/src/codedump.lo ../mruby-source/src/compar.lo ../mruby-source/src/crc.lo ../mruby-source/src/debug.lo ../mruby-source/src/dump.lo ../mruby-source/src/enum.lo ../mruby-source/src/error.lo ../mruby-source/src/etc.lo ../mruby-source/src/fmt_fp.lo ../mruby-source/src/gc.lo ../mruby-source/src/hash.lo ../mruby-source/src/init.lo ../mruby-source/src/kernel.lo ../mruby-source/src/load.lo ../mruby-source/src/numeric.lo ../mruby-source/src/object.lo ../mruby-source/src/pool.lo ../mruby-source/src/print.lo ../mruby-source/src/proc.lo ../mruby-source/src/range.lo ../mruby-source/src/state.lo ../mruby-source/src/string.lo ../mruby-source/src/symbol.lo ../mruby-source/src/variable.lo ../mruby-source/src/version.lo ../mruby-source/src/vm.lo ../mruby-source/mrbgems/mruby-compiler/core/codegen.lo ../mruby-source/mrbgems/mruby-sprintf/src/kernel.lo ../mruby-source/mrbgems/mruby-sprintf/src/sprintf.lo ../mruby-source/mrbgems/mruby-print/src/print.lo ../mruby-source/mrbgems/mruby-math/src/math.lo ../mruby-source/mrbgems/mruby-time/src/time.lo ../mruby-source/mrbgems/mruby-struct/src/struct.lo ../mruby-source/mrbgems/mruby-string-ext/src/string.lo ../mruby-source/mrbgems/mruby-numeric-ext/src/numeric_ext.lo ../mruby-source/mrbgems/mruby-array-ext/src/array.lo ../mruby-source/mrbgems/mruby-hash-ext/src/hash-ext.lo ../mruby-source/mrbgems/mruby-range-ext/src/range.lo ../mruby-source/mrbgems/mruby-proc-ext/src/proc.lo ../mruby-source/mrbgems/mruby-proc-ext/test/proc.lo ../mruby-source/mrbgems/mruby-symbol-ext/src/symbol.lo ../mruby-source/mrbgems/mruby-random/src/mt19937ar.lo ../mruby-source/mrbgems/mruby-random/src/random.lo ../mruby-source/mrbgems/mruby-object-ext/src/object.lo ../mruby-source/mrbgems/mruby-objectspace/src/mruby_objectspace.lo ../mruby-source/mrbgems/mruby-fiber/src/fiber.lo ../mruby-source/mrbgems/mruby-kernel-ext/src/kernel.lo mrblib.lo mrbgems_init.lo mruby-compiler/core/parse.lo mruby-onig-regexp/src/mruby_onig_regexp.lo mruby-env/src/env.lo mruby-io/src/file.lo mruby-io/src/file_test.lo mruby-io/src/io.lo mruby-io/src/mruby_io_gem.lo mruby-file-stat/src/file-stat.lo  -lz -ldl -lpthread -lm  
copying selected object files to avoid basename conflicts...
libtool: link: ln ../mruby-source/mrbgems/mruby-sprintf/src/.libs/kernel.o .libs/libmruby.lax/lt1-kernel.o || cp ../mruby-source/mrbgems/mruby-sprintf/src/.libs/kernel.o .libs/libmruby.lax/lt1-kernel.o
libtool: link: ln ../mruby-source/mrbgems/mruby-print/src/.libs/print.o .libs/libmruby.lax/lt2-print.o || cp ../mruby-source/mrbgems/mruby-print/src/.libs/print.o .libs/libmruby.lax/lt2-print.o
libtool: link: ln ../mruby-source/mrbgems/mruby-string-ext/src/.libs/string.o .libs/libmruby.lax/lt3-string.o || cp ../mruby-source/mrbgems/mruby-string-ext/src/.libs/string.o .libs/libmruby.lax/lt3-string.o
libtool: link: ln ../mruby-source/mrbgems/mruby-array-ext/src/.libs/array.o .libs/libmruby.lax/lt4-array.o || cp ../mruby-source/mrbgems/mruby-array-ext/src/.libs/array.o .libs/libmruby.lax/lt4-array.o
libtool: link: ln ../mruby-source/mrbgems/mruby-range-ext/src/.libs/range.o .libs/libmruby.lax/lt5-range.o || cp ../mruby-source/mrbgems/mruby-range-ext/src/.libs/range.o .libs/libmruby.lax/lt5-range.o
libtool: link: ln ../mruby-source/mrbgems/mruby-proc-ext/src/.libs/proc.o .libs/libmruby.lax/lt6-proc.o || cp ../mruby-source/mrbgems/mruby-proc-ext/src/.libs/proc.o .libs/libmruby.lax/lt6-proc.o
libtool: link: ln ../mruby-source/mrbgems/mruby-proc-ext/test/.libs/proc.o .libs/libmruby.lax/lt7-proc.o || cp ../mruby-source/mrbgems/mruby-proc-ext/test/.libs/proc.o .libs/libmruby.lax/lt7-proc.o
libtool: link: ln ../mruby-source/mrbgems/mruby-symbol-ext/src/.libs/symbol.o .libs/libmruby.lax/lt8-symbol.o || cp ../mruby-source/mrbgems/mruby-symbol-ext/src/.libs/symbol.o .libs/libmruby.lax/lt8-symbol.o
libtool: link: ln ../mruby-source/mrbgems/mruby-object-ext/src/.libs/object.o .libs/libmruby.lax/lt9-object.o || cp ../mruby-source/mrbgems/mruby-object-ext/src/.libs/object.o .libs/libmruby.lax/lt9-object.o
libtool: link: ln ../mruby-source/mrbgems/mruby-kernel-ext/src/.libs/kernel.o .libs/libmruby.lax/lt10-kernel.o || cp ../mruby-source/mrbgems/mruby-kernel-ext/src/.libs/kernel.o .libs/libmruby.lax/lt10-kernel.o
libtool: link: ar cru .libs/libmruby.a ../mruby-source/src/.libs/array.o ../mruby-source/src/.libs/backtrace.o ../mruby-source/src/.libs/class.o ../mruby-source/src/.libs/codedump.o ../mruby-source/src/.libs/compar.o ../mruby-source/src/.libs/crc.o ../mruby-source/src/.libs/debug.o ../mruby-source/src/.libs/dump.o ../mruby-source/src/.libs/enum.o ../mruby-source/src/.libs/error.o ../mruby-source/src/.libs/etc.o ../mruby-source/src/.libs/fmt_fp.o ../mruby-source/src/.libs/gc.o ../mruby-source/src/.libs/hash.o ../mruby-source/src/.libs/init.o ../mruby-source/src/.libs/kernel.o ../mruby-source/src/.libs/load.o ../mruby-source/src/.libs/numeric.o ../mruby-source/src/.libs/object.o ../mruby-source/src/.libs/pool.o ../mruby-source/src/.libs/print.o ../mruby-source/src/.libs/proc.o ../mruby-source/src/.libs/range.o ../mruby-source/src/.libs/state.o ../mruby-source/src/.libs/string.o ../mruby-source/src/.libs/symbol.o ../mruby-source/src/.libs/variable.o ../mruby-source/src/.libs/version.o ../mruby-source/src/.libs/vm.o ../mruby-source/mrbgems/mruby-compiler/core/.libs/codegen.o .libs/libmruby.lax/lt1-kernel.o ../mruby-source/mrbgems/mruby-sprintf/src/.libs/sprintf.o .libs/libmruby.lax/lt2-print.o ../mruby-source/mrbgems/mruby-math/src/.libs/math.o ../mruby-source/mrbgems/mruby-time/src/.libs/time.o ../mruby-source/mrbgems/mruby-struct/src/.libs/struct.o .libs/libmruby.lax/lt3-string.o ../mruby-source/mrbgems/mruby-numeric-ext/src/.libs/numeric_ext.o .libs/libmruby.lax/lt4-array.o ../mruby-source/mrbgems/mruby-hash-ext/src/.libs/hash-ext.o .libs/libmruby.lax/lt5-range.o .libs/libmruby.lax/lt6-proc.o .libs/libmruby.lax/lt7-proc.o .libs/libmruby.lax/lt8-symbol.o ../mruby-source/mrbgems/mruby-random/src/.libs/mt19937ar.o ../mruby-source/mrbgems/mruby-random/src/.libs/random.o .libs/libmruby.lax/lt9-object.o ../mruby-source/mrbgems/mruby-objectspace/src/.libs/mruby_objectspace.o ../mruby-source/mrbgems/mruby-fiber/src/.libs/fiber.o .libs/libmruby.lax/lt10-kernel.o .libs/mrblib.o .libs/mrbgems_init.o mruby-compiler/core/.libs/parse.o mruby-onig-regexp/src/.libs/mruby_onig_regexp.o mruby-env/src/.libs/env.o mruby-io/src/.libs/file.o mruby-io/src/.libs/file_test.o mruby-io/src/.libs/io.o mruby-io/src/.libs/mruby_io_gem.o mruby-file-stat/src/.libs/file-stat.o
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libmruby.a
libtool: link: rm -fr .libs/libmruby.lax
libtool: link: ( cd ".libs" && rm -f "libmruby.la" && ln -s "../libmruby.la" "libmruby.la" )
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mruby'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mruby'
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor'
Making all in lib
make[3]: Entering directory '/<<PKGBUILDDIR>>/lib'
make  all-recursive
make[4]: Entering directory '/<<PKGBUILDDIR>>/lib'
Making all in dat
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/dat'
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o cursor-factory.lo cursor-factory.cpp
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o file-impl.lo file-impl.cpp
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o file.lo file.cpp
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o id-cursor.lo id-cursor.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c id-cursor.cpp  -fPIC -DPIC -o .libs/id-cursor.o
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c file-impl.cpp  -fPIC -DPIC -o .libs/file-impl.o
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c cursor-factory.cpp  -fPIC -DPIC -o .libs/cursor-factory.o
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c file.cpp  -fPIC -DPIC -o .libs/file.o
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o key-cursor.lo key-cursor.cpp
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o predictive-cursor.lo predictive-cursor.cpp
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o prefix-cursor.lo prefix-cursor.cpp
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o trie.lo trie.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c key-cursor.cpp  -fPIC -DPIC -o .libs/key-cursor.o
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c predictive-cursor.cpp  -fPIC -DPIC -o .libs/predictive-cursor.o
In file included from key-cursor.hpp:22:0,
                 from key-cursor.cpp:18:
vector.hpp: In instantiation of 'void grn::dat::Vector<T>::reserve(grn::dat::UInt32) [with T = unsigned int; grn::dat::UInt32 = unsigned int]':
vector.hpp:86:12:   required from 'void grn::dat::Vector<T>::push_back(const T&) [with T = unsigned int]'
key-cursor.cpp:142:32:   required from here
vector.hpp:138:18: warning: cast from 'char*' to 'unsigned int*' increases required alignment of target type [-Wcast-align]
     T *new_buf = reinterpret_cast<T *>(
                  ^~~~~~~~~~~~~~~~~~~~~~
         new (std::nothrow) char[sizeof(new_capacity) * new_capacity]);
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from predictive-cursor.hpp:22:0,
                 from predictive-cursor.cpp:18:
vector.hpp: In instantiation of 'void grn::dat::Vector<T>::reserve(grn::dat::UInt32) [with T = unsigned int; grn::dat::UInt32 = unsigned int]':
vector.hpp:86:12:   required from 'void grn::dat::Vector<T>::push_back(const T&) [with T = unsigned int]'
predictive-cursor.cpp:123:33:   required from here
vector.hpp:138:18: warning: cast from 'char*' to 'unsigned int*' increases required alignment of target type [-Wcast-align]
     T *new_buf = reinterpret_cast<T *>(
                  ^~~~~~~~~~~~~~~~~~~~~~
         new (std::nothrow) char[sizeof(new_capacity) * new_capacity]);
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c prefix-cursor.cpp  -fPIC -DPIC -o .libs/prefix-cursor.o
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c trie.cpp  -fPIC -DPIC -o .libs/trie.o
In file included from prefix-cursor.hpp:22:0,
                 from prefix-cursor.cpp:18:
vector.hpp: In instantiation of 'void grn::dat::Vector<T>::reserve(grn::dat::UInt32) [with T = unsigned int; grn::dat::UInt32 = unsigned int]':
vector.hpp:86:12:   required from 'void grn::dat::Vector<T>::push_back(const T&) [with T = unsigned int]'
prefix-cursor.cpp:114:38:   required from here
vector.hpp:138:18: warning: cast from 'char*' to 'unsigned int*' increases required alignment of target type [-Wcast-align]
     T *new_buf = reinterpret_cast<T *>(
                  ^~~~~~~~~~~~~~~~~~~~~~
         new (std::nothrow) char[sizeof(new_capacity) * new_capacity]);
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from trie.cpp:23:0:
vector.hpp: In instantiation of 'void grn::dat::Vector<T>::reserve(grn::dat::UInt32) [with T = unsigned int; grn::dat::UInt32 = unsigned int]':
vector.hpp:86:12:   required from 'void grn::dat::Vector<T>::push_back(const T&) [with T = unsigned int]'
trie.cpp:364:28:   required from here
vector.hpp:138:18: warning: cast from 'char*' to 'unsigned int*' increases required alignment of target type [-Wcast-align]
     T *new_buf = reinterpret_cast<T *>(
                  ^~~~~~~~~~~~~~~~~~~~~~
         new (std::nothrow) char[sizeof(new_capacity) * new_capacity]);
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates  -Wl,-z,relro -Wl,-z,now -o libgrndat.la  cursor-factory.lo file-impl.lo file.lo id-cursor.lo key-cursor.lo predictive-cursor.lo prefix-cursor.lo trie.lo  -lz -ldl -lpthread -lm  
libtool: link: ar cru .libs/libgrndat.a .libs/cursor-factory.o .libs/file-impl.o .libs/file.o .libs/id-cursor.o .libs/key-cursor.o .libs/predictive-cursor.o .libs/prefix-cursor.o .libs/trie.o 
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libgrndat.a
libtool: link: ( cd ".libs" && rm -f "libgrndat.la" && ln -s "../libgrndat.la" "libgrndat.la" )
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/dat'
Making all in mrb
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb'
Making all in scripts
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
Making all in command_line
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/command_line'
make[7]: Nothing to be done for 'all'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/command_line'
Making all in context
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/context'
make[7]: Nothing to be done for 'all'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/context'
Making all in expression_tree
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/expression_tree'
make[7]: Nothing to be done for 'all'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/expression_tree'
Making all in initialize
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/initialize'
make[7]: Nothing to be done for 'all'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/initialize'
Making all in logger
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/logger'
make[7]: Nothing to be done for 'all'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/logger'
Making all in query_logger
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/query_logger'
make[7]: Nothing to be done for 'all'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/query_logger'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[7]: Nothing to be done for 'all-am'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_accessor.lo mrb_accessor.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_array.lo mrb_array.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_bulk.lo mrb_bulk.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_cache.lo mrb_cache.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_accessor.c  -fPIC -DPIC -o .libs/mrb_accessor.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_cache.c  -fPIC -DPIC -o .libs/mrb_cache.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_array.c  -fPIC -DPIC -o .libs/mrb_array.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_bulk.c  -fPIC -DPIC -o .libs/mrb_bulk.o
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_ctx.h:21,
                 from ../grn_ctx_impl.h:22,
                 from mrb_bulk.c:19:
mrb_bulk.c: In function 'grn_mrb_value_from_bulk':
../../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
mrb_bulk.c:141:15: note: in expansion of macro 'GRN_INT16_VALUE'
       value = GRN_INT16_VALUE(bulk);
               ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
mrb_bulk.c:148:15: note: in expansion of macro 'GRN_UINT16_VALUE'
       value = GRN_UINT16_VALUE(bulk);
               ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
mrb_bulk.c:155:15: note: in expansion of macro 'GRN_INT32_VALUE'
       value = GRN_INT32_VALUE(bulk);
               ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
mrb_bulk.c:162:15: note: in expansion of macro 'GRN_UINT32_VALUE'
       value = GRN_UINT32_VALUE(bulk);
               ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
mrb_bulk.c:173:15: note: in expansion of macro 'GRN_INT64_VALUE'
       value = GRN_INT64_VALUE(bulk);
               ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
mrb_bulk.c:184:15: note: in expansion of macro 'GRN_UINT64_VALUE'
       value = GRN_UINT64_VALUE(bulk);
               ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
mrb_bulk.c:195:15: note: in expansion of macro 'GRN_FLOAT_VALUE'
       value = GRN_FLOAT_VALUE(bulk);
               ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
mrb_bulk.c:206:15: note: in expansion of macro 'GRN_TIME_VALUE'
       value = GRN_TIME_VALUE(bulk);
               ^~~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
mrb_bulk.c:248:39: note: in expansion of macro 'GRN_RECORD_VALUE'
         mrb_value_ = mrb_fixnum_value(GRN_RECORD_VALUE(bulk));
                                       ^~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_column.lo mrb_column.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_command.lo mrb_command.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_command_input.lo mrb_command_input.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_column.c  -fPIC -DPIC -o .libs/mrb_column.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_command.c  -fPIC -DPIC -o .libs/mrb_command.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_command_input.c  -fPIC -DPIC -o .libs/mrb_command_input.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_command_version.lo mrb_command_version.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_command_version.c  -fPIC -DPIC -o .libs/mrb_command_version.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_config.lo mrb_config.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_content_type.lo mrb_content_type.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_converter.lo mrb_converter.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_config.c  -fPIC -DPIC -o .libs/mrb_config.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_content_type.c  -fPIC -DPIC -o .libs/mrb_content_type.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_ctx.lo mrb_ctx.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_converter.c  -fPIC -DPIC -o .libs/mrb_converter.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_ctx.c  -fPIC -DPIC -o .libs/mrb_ctx.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_database.lo mrb_database.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_double_array_trie.lo mrb_double_array_trie.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_database.c  -fPIC -DPIC -o .libs/mrb_database.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_double_array_trie.c  -fPIC -DPIC -o .libs/mrb_double_array_trie.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_error.lo mrb_error.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_eval_context.lo mrb_eval_context.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_error.c  -fPIC -DPIC -o .libs/mrb_error.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_expr.lo mrb_expr.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_eval_context.c  -fPIC -DPIC -o .libs/mrb_eval_context.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_expr.c  -fPIC -DPIC -o .libs/mrb_expr.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_fixed_size_column.lo mrb_fixed_size_column.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_hash_table.lo mrb_hash_table.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_id.lo mrb_id.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_fixed_size_column.c  -fPIC -DPIC -o .libs/mrb_fixed_size_column.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_hash_table.c  -fPIC -DPIC -o .libs/mrb_hash_table.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_id.c  -fPIC -DPIC -o .libs/mrb_id.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_indexable.lo mrb_indexable.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_index_column.lo mrb_index_column.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_indexable.c  -fPIC -DPIC -o .libs/mrb_indexable.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_index_cursor.lo mrb_index_cursor.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_index_column.c  -fPIC -DPIC -o .libs/mrb_index_column.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_index_cursor.c  -fPIC -DPIC -o .libs/mrb_index_cursor.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_logger.lo mrb_logger.c
mrb_indexable.c: In function 'indexable_index_ids':
mrb_indexable.c:146:14: warning: cast increases required alignment of target type [-Wcast-align]
       data = (grn_obj_default_set_value_hook_data *)GRN_TEXT_VALUE(&hook_data);
              ^
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_ctx.h:21,
                 from ../grn_ctx_impl.h:22,
                 from mrb_index_column.c:19:
mrb_index_column.c: In function 'mrb_grn_index_column_get_source_ids':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
mrb_index_column.c:79:24: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     grn_id source_id = GRN_RECORD_VALUE_AT(&source_ids, i);
                        ^~~~~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_object.lo mrb_object.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_logger.c  -fPIC -DPIC -o .libs/mrb_logger.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_object_flags.lo mrb_object_flags.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_object.c  -fPIC -DPIC -o .libs/mrb_object.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_operator.lo mrb_operator.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_object_flags.c  -fPIC -DPIC -o .libs/mrb_object_flags.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_options.lo mrb_options.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_operator.c  -fPIC -DPIC -o .libs/mrb_operator.o
mrb_object.c: In function 'object_hash':
mrb_object.c:161:37: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
   return mrb_fixnum_value((mrb_int)((uint64_t)object));
                                     ^
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_options.c  -fPIC -DPIC -o .libs/mrb_options.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_patricia_trie.lo mrb_patricia_trie.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_pointer.lo mrb_pointer.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_procedure.lo mrb_procedure.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_patricia_trie.c  -fPIC -DPIC -o .libs/mrb_patricia_trie.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_pointer.c  -fPIC -DPIC -o .libs/mrb_pointer.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_procedure.c  -fPIC -DPIC -o .libs/mrb_procedure.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_query_logger.lo mrb_query_logger.c
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_ctx.h:21,
                 from ../grn_ctx_impl.h:22,
                 from mrb_pointer.c:19:
mrb_pointer.c: In function 'mrb_grn_pointer_get_value':
../../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
mrb_pointer.c:57:42: note: in expansion of macro 'GRN_PTR_VALUE'
   return grn_mrb_value_from_grn_obj(mrb, GRN_PTR_VALUE(pointer));
                                          ^~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_record.lo mrb_record.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table.lo mrb_table.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_query_logger.c  -fPIC -DPIC -o .libs/mrb_query_logger.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table.c  -fPIC -DPIC -o .libs/mrb_table.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_record.c  -fPIC -DPIC -o .libs/mrb_record.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table_cursor.lo mrb_table_cursor.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table_cursor.c  -fPIC -DPIC -o .libs/mrb_table_cursor.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table_cursor_flags.lo mrb_table_cursor_flags.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table_group_flags.lo mrb_table_group_flags.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table_cursor_flags.c  -fPIC -DPIC -o .libs/mrb_table_cursor_flags.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table_group_result.lo mrb_table_group_result.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table_group_flags.c  -fPIC -DPIC -o .libs/mrb_table_group_flags.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table_sort_flags.lo mrb_table_sort_flags.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table_group_result.c  -fPIC -DPIC -o .libs/mrb_table_group_result.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table_sort_key.lo mrb_table_sort_key.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table_sort_flags.c  -fPIC -DPIC -o .libs/mrb_table_sort_flags.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_thread.lo mrb_thread.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table_sort_key.c  -fPIC -DPIC -o .libs/mrb_table_sort_key.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_thread.c  -fPIC -DPIC -o .libs/mrb_thread.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_type.lo mrb_type.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_variable_size_column.lo mrb_variable_size_column.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_type.c  -fPIC -DPIC -o .libs/mrb_type.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_void.lo mrb_void.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_variable_size_column.c  -fPIC -DPIC -o .libs/mrb_variable_size_column.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_writer.lo mrb_writer.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_void.c  -fPIC -DPIC -o .libs/mrb_void.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_writer.c  -fPIC -DPIC -o .libs/mrb_writer.o
In file included from ../../include/groonga.h:40:0,
                 from ../grn.h:761,
                 from ../grn_ctx.h:21,
                 from ../grn_ctx_impl.h:22,
                 from mrb_writer.c:19:
mrb_writer.c: In function 'writer_write_table_columns':
../../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
mrb_writer.c:151:7: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
       GRN_OBJ_FORMAT_FIN(ctx, &format);
       ^~~~~~~~~~~~~~~~~~
../../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
mrb_writer.c:156:3: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
   GRN_OBJ_FORMAT_FIN(ctx, &format);
   ^~~~~~~~~~~~~~~~~~
mrb_writer.c: In function 'writer_write_table_records':
../../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
mrb_writer.c:202:7: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
       GRN_OBJ_FORMAT_FIN(ctx, &format);
       ^~~~~~~~~~~~~~~~~~
../../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
mrb_writer.c:207:3: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
   GRN_OBJ_FORMAT_FIN(ctx, &format);
   ^~~~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=link gcc -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o libgrnmrb.la  mrb_accessor.lo mrb_array.lo mrb_bulk.lo mrb_cache.lo mrb_column.lo mrb_command.lo mrb_command_input.lo mrb_command_version.lo mrb_config.lo mrb_content_type.lo mrb_converter.lo mrb_ctx.lo mrb_database.lo mrb_double_array_trie.lo mrb_error.lo mrb_eval_context.lo mrb_expr.lo mrb_fixed_size_column.lo mrb_hash_table.lo mrb_id.lo mrb_indexable.lo mrb_index_column.lo mrb_index_cursor.lo mrb_logger.lo mrb_object.lo mrb_object_flags.lo mrb_operator.lo mrb_options.lo mrb_patricia_trie.lo mrb_pointer.lo mrb_procedure.lo mrb_query_logger.lo mrb_record.lo mrb_table.lo mrb_table_cursor.lo mrb_table_cursor_flags.lo mrb_table_group_flags.lo mrb_table_group_result.lo mrb_table_sort_flags.lo mrb_table_sort_key.lo mrb_thread.lo mrb_type.lo mrb_variable_size_column.lo mrb_void.lo mrb_writer.lo  -lz -ldl -lpthread -lm  
libtool: link: ar cru .libs/libgrnmrb.a .libs/mrb_accessor.o .libs/mrb_array.o .libs/mrb_bulk.o .libs/mrb_cache.o .libs/mrb_column.o .libs/mrb_command.o .libs/mrb_command_input.o .libs/mrb_command_version.o .libs/mrb_config.o .libs/mrb_content_type.o .libs/mrb_converter.o .libs/mrb_ctx.o .libs/mrb_database.o .libs/mrb_double_array_trie.o .libs/mrb_error.o .libs/mrb_eval_context.o .libs/mrb_expr.o .libs/mrb_fixed_size_column.o .libs/mrb_hash_table.o .libs/mrb_id.o .libs/mrb_indexable.o .libs/mrb_index_column.o .libs/mrb_index_cursor.o .libs/mrb_logger.o .libs/mrb_object.o .libs/mrb_object_flags.o .libs/mrb_operator.o .libs/mrb_options.o .libs/mrb_patricia_trie.o .libs/mrb_pointer.o .libs/mrb_procedure.o .libs/mrb_query_logger.o .libs/mrb_record.o .libs/mrb_table.o .libs/mrb_table_cursor.o .libs/mrb_table_cursor_flags.o .libs/mrb_table_group_flags.o .libs/mrb_table_group_result.o .libs/mrb_table_sort_flags.o .libs/mrb_table_sort_key.o .libs/mrb_thread.o .libs/mrb_type.o .libs/mrb_variable_size_column.o .libs/mrb_void.o .libs/mrb_writer.o 
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libgrnmrb.a
libtool: link: ( cd ".libs" && rm -f "libgrnmrb.la" && ln -s "../libgrnmrb.la" "libgrnmrb.la" )
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb'
Making all in proc
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/proc'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_column.lo proc_column.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_config.lo proc_config.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_dump.lo proc_dump.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_fuzzy_search.lo proc_fuzzy_search.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_column.c  -fPIC -DPIC -o .libs/proc_column.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_dump.c  -fPIC -DPIC -o .libs/proc_dump.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_fuzzy_search.c  -fPIC -DPIC -o .libs/proc_fuzzy_search.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_config.c  -fPIC -DPIC -o .libs/proc_config.o
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_fuzzy_search.c:19:
proc_fuzzy_search.c: In function 'sequential_fuzzy_search':
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc_fuzzy_search.c:250:17: note: in expansion of macro 'GRN_RECORD_VALUE'
           rid = GRN_RECORD_VALUE(&value);
                 ^~~~~~~~~~~~~~~~
proc_fuzzy_search.c: In function 'selector_fuzzy_search':
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_fuzzy_search.c:330:22: note: in expansion of macro 'GRN_UINT32_VALUE'
       max_distance = GRN_UINT32_VALUE(options);
                      ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_fuzzy_search.c:351:28: note: in expansion of macro 'GRN_UINT32_VALUE'
             max_distance = GRN_UINT32_VALUE(value);
                            ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_fuzzy_search.c:353:29: note: in expansion of macro 'GRN_UINT32_VALUE'
             prefix_length = GRN_UINT32_VALUE(value);
                             ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_fuzzy_search.c:355:29: note: in expansion of macro 'GRN_UINT32_VALUE'
             max_expansion = GRN_UINT32_VALUE(value);
                             ^~~~~~~~~~~~~~~~
proc_dump.c: In function 'dump_index_column_sources':
proc_dump.c:242:16: warning: cast increases required alignment of target type [-Wcast-align]
   source_ids = (grn_id *)GRN_BULK_HEAD(&sources);
                ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_lock.lo proc_lock.c
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_dump.c:19:
proc_dump.c: In function 'dump_records':
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_dump.c:523:14: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     column = GRN_PTR_VALUE_AT(&columns, i);
              ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_dump.c:555:16: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       column = GRN_PTR_VALUE_AT(&columns, j);
                ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_dump.c:634:14: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     column = GRN_PTR_VALUE_AT(&columns, i);
              ^~~~~~~~~~~~~~~~
proc_dump.c: In function 'dump_table':
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_dump.c:721:33: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         grn_obj *token_filter = GRN_PTR_VALUE_AT(token_filters, i);
                                 ^~~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_lock.c  -fPIC -DPIC -o .libs/proc_lock.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_object.lo proc_object.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_object_inspect.lo proc_object_inspect.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_object.c  -fPIC -DPIC -o .libs/proc_object.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_object_inspect.c  -fPIC -DPIC -o .libs/proc_object_inspect.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_object_list.lo proc_object_list.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_query.lo proc_query.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_schema.lo proc_schema.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_object_list.c  -fPIC -DPIC -o .libs/proc_object_list.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_query.c  -fPIC -DPIC -o .libs/proc_query.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_select.lo proc_select.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_schema.c  -fPIC -DPIC -o .libs/proc_schema.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_snippet.lo proc_snippet.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_select.c  -fPIC -DPIC -o .libs/proc_select.o
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_schema.c:19:
proc_schema.c: In function 'command_schema_output_tokenizers':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc_schema.c:290:20: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     tokenizer_id = GRN_RECORD_VALUE_AT(&tokenizer_ids, i);
                    ^~~~~~~~~~~~~~~~~~~
proc_schema.c: In function 'command_schema_output_normalizers':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc_schema.c:357:21: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     normalizer_id = GRN_RECORD_VALUE_AT(&normalizer_ids, i);
                     ^~~~~~~~~~~~~~~~~~~
proc_schema.c: In function 'command_schema_output_token_filters':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc_schema.c:424:23: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     token_filter_id = GRN_RECORD_VALUE_AT(&token_filter_ids, i);
                       ^~~~~~~~~~~~~~~~~~~
proc_schema.c: In function 'command_schema_table_output_token_filters':
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_schema.c:558:20: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     token_filter = GRN_PTR_VALUE_AT(&token_filters, i);
                    ^~~~~~~~~~~~~~~~
proc_schema.c: In function 'command_schema_table_command_collect_arguments':
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_schema.c:677:24: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         token_filter = GRN_PTR_VALUE_AT(&token_filters, i);
                        ^~~~~~~~~~~~~~~~
proc_schema.c: In function 'command_schema_column_output_sources':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc_schema.c:787:17: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     source_id = GRN_RECORD_VALUE_AT(&source_ids, i);
                 ^~~~~~~~~~~~~~~~~~~
proc_schema.c: In function 'command_schema_column_command_collect_arguments':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc_schema.c:952:21: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
         source_id = GRN_RECORD_VALUE_AT(&source_ids, i);
                     ^~~~~~~~~~~~~~~~~~~
proc_schema.c: In function 'command_schema_output_tables':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc_schema.c:1185:16: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     table_id = GRN_RECORD_VALUE_AT(&table_ids, i);
                ^~~~~~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_snippet.c  -fPIC -DPIC -o .libs/proc_snippet.o
In file included from ../../include/groonga.h:40:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_select.c:19:
proc_select.c: In function 'grn_proc_select_format_init':
../../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
proc_select.c:1071:5: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
     GRN_OBJ_FORMAT_FIN(ctx, format);
     ^~~~~~~~~~~~~~~~~~
proc_select.c: In function 'grn_proc_select_format_fin':
../../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
proc_select.c:1083:3: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
   GRN_OBJ_FORMAT_FIN(ctx, format);
   ^~~~~~~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_select.c:19:
proc_select.c: In function 'grn_select_apply_adjuster_execute_ensure_factor':
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc_select.c:1462:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(factor_object);
            ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc_select.c:1470:16: note: in expansion of macro 'GRN_INT32_VALUE'
       factor = GRN_INT32_VALUE(&int32_object);
                ^~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_highlight.lo proc_highlight.c
proc_select.c: In function 'grn_select_drilldown_execute':
proc_select.c:2008:5: warning: cast increases required alignment of target type [-Wcast-align]
     (grn_drilldown_data *)grn_hash_get_value_(ctx, drilldowns, id, NULL);
     ^
proc_select.c:2039:13: warning: cast increases required alignment of target type [-Wcast-align]
             (grn_slice_data *)grn_hash_get_value_(ctx, data->slices,
             ^
proc_select.c:2059:9: warning: cast increases required alignment of target type [-Wcast-align]
         (grn_drilldown_data *)grn_hash_get_value_(ctx,
         ^
proc_select.c: In function 'drilldown_tsort_visit':
proc_select.c:2219:9: warning: cast increases required alignment of target type [-Wcast-align]
         (grn_drilldown_data *)grn_hash_get_value_(ctx, drilldowns, id, NULL);
         ^
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_select.c:19:
proc_select.c: In function 'grn_select_drilldowns_execute':
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_snippet.c:19:
proc_snippet.c: In function 'func_snippet':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc_select.c:2323:10: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     id = GRN_RECORD_VALUE_AT(&tsorted_ids, i);
          ^~~~~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_snippet.c:136:19: note: in expansion of macro 'GRN_UINT32_VALUE'
           width = GRN_UINT32_VALUE(value);
                   ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_snippet.c:138:27: note: in expansion of macro 'GRN_UINT32_VALUE'
           max_n_results = GRN_UINT32_VALUE(value);
                           ^~~~~~~~~~~~~~~~
proc_snippet.c: In function 'func_snippet_html':
../../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
proc_snippet.c:271:19: note: in expansion of macro 'GRN_PTR_VALUE'
       condition = GRN_PTR_VALUE(condition_ptr);
                   ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
proc_snippet.c:280:16: note: in expansion of macro 'GRN_PTR_VALUE'
         snip = GRN_PTR_VALUE(snip_ptr);
                ^~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_highlight.c  -fPIC -DPIC -o .libs/proc_highlight.o
proc_highlight.c: In function 'highlight_keyword_sets':
proc_highlight.c:196:22: warning: cast increases required alignment of target type [-Wcast-align]
                      (const char **)GRN_BULK_HEAD(&open_tags),
                      ^
proc_highlight.c:197:22: warning: cast increases required alignment of target type [-Wcast-align]
                      (unsigned int *)GRN_BULK_HEAD(&open_tag_lengths),
                      ^
proc_highlight.c:198:22: warning: cast increases required alignment of target type [-Wcast-align]
                      (const char **)GRN_BULK_HEAD(&close_tags),
                      ^
proc_highlight.c:199:22: warning: cast increases required alignment of target type [-Wcast-align]
                      (unsigned int *)GRN_BULK_HEAD(&close_tag_lengths),
                      ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_table.lo proc_table.c
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_highlight.c:19:
proc_highlight.c: In function 'func_highlight_html_create_keywords_table':
../../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
proc_highlight.c:418:17: note: in expansion of macro 'GRN_PTR_VALUE'
     condition = GRN_PTR_VALUE(condition_ptr);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_highlight.c:430:17: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       keyword = GRN_PTR_VALUE_AT(&current_keywords, i);
                 ^~~~~~~~~~~~~~~~
proc_highlight.c: In function 'func_highlight_html':
../../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
proc_highlight.c:462:18: note: in expansion of macro 'GRN_PTR_VALUE'
       keywords = GRN_PTR_VALUE(keywords_ptr);
                  ^~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_table.c  -fPIC -DPIC -o .libs/proc_table.o
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_table.c:19:
proc_table.c: In function 'command_table_list':
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_table.c:506:22: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *table = GRN_PTR_VALUE_AT(&tables, i);
                      ^~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_tokenize.lo proc_tokenize.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_tokenize.c  -fPIC -DPIC -o .libs/proc_tokenize.o
proc_tokenize.c: In function 'output_tokens':
proc_tokenize.c:90:14: warning: cast increases required alignment of target type [-Wcast-align]
     token = ((tokenize_token *)(GRN_BULK_HEAD(tokens))) + i;
              ^
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_tokenize.c:19:
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_tokenize.c:109:33: note: in expansion of macro 'GRN_UINT32_VALUE'
       grn_ctx_output_int64(ctx, GRN_UINT32_VALUE(&estimated_size));
                                 ^~~~~~~~~~~~~~~~
proc_tokenize.c: In function 'tokenize':
proc_tokenize.c:223:22: warning: cast increases required alignment of target type [-Wcast-align]
     current_token = ((tokenize_token *)(GRN_BULK_CURR(tokens))) - 1;
                      ^
/bin/bash ../../libtool  --tag=CC   --mode=link gcc -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o libgrnproc.la  proc_column.lo proc_config.lo proc_dump.lo proc_fuzzy_search.lo proc_lock.lo proc_object.lo proc_object_inspect.lo proc_object_list.lo proc_query.lo proc_schema.lo proc_select.lo proc_snippet.lo proc_highlight.lo proc_table.lo proc_tokenize.lo  -lz -ldl -lpthread -lm  
libtool: link: ar cru .libs/libgrnproc.a .libs/proc_column.o .libs/proc_config.o .libs/proc_dump.o .libs/proc_fuzzy_search.o .libs/proc_lock.o .libs/proc_object.o .libs/proc_object_inspect.o .libs/proc_object_list.o .libs/proc_query.o .libs/proc_schema.o .libs/proc_select.o .libs/proc_snippet.o .libs/proc_highlight.o .libs/proc_table.o .libs/proc_tokenize.o 
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libgrnproc.a
libtool: link: ( cd ".libs" && rm -f "libgrnproc.la" && ln -s "../libgrnproc.la" "libgrnproc.la" )
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/proc'
Making all in ts
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/ts'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_buf.lo ts_buf.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_cursor.lo ts_cursor.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_expr.lo ts_expr.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_expr_builder.lo ts_expr_builder.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_expr.c  -fPIC -DPIC -o .libs/ts_expr.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_expr_builder.c  -fPIC -DPIC -o .libs/ts_expr_builder.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_cursor.c  -fPIC -DPIC -o .libs/ts_cursor.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_buf.c  -fPIC -DPIC -o .libs/ts_buf.o
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ts_expr_builder.h:21,
                 from ts_expr_builder.c:19:
ts_expr_builder.c: In function 'grn_ts_expr_builder_push_bulk':
../../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_INT16_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:262:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(INT16, INT, int)
     ^
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_INT32_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:263:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(INT32, INT, int)
     ^
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_INT64_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:264:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(INT64, INT, int)
     ^
../../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_UINT16_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:266:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(UINT16, INT, int)
     ^
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_UINT32_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:267:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(UINT32, INT, int)
     ^
../../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_UINT64_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:269:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(UINT64, INT, int)
     ^
../../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_FLOAT_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:270:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(FLOAT, FLOAT, float)
     ^
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_TIME_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:271:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(TIME, TIME, time)
     ^
../../include/groonga/groonga.h:1476:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
ts_expr_builder.c:282:7: note: in expansion of macro 'GRN_GEO_POINT_VALUE'
       GRN_GEO_POINT_VALUE(obj, value.as_geo.latitude, value.as_geo.longitude);
       ^~~~~~~~~~~~~~~~~~~
ts_expr_builder.c: In function 'grn_ts_expr_builder_push_uvector':
../../include/groonga/groonga.h:1484:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE_AT(obj,offset) (((signed short *)GRN_BULK_HEAD(obj))[offset])
                                          ^
ts_expr_builder.c:318:16: note: in expansion of macro 'GRN_INT16_VALUE_AT'
       buf[i] = GRN_ ## TYPE ##_VALUE_AT(obj, i);\
                ^~~~
ts_expr_builder.c:336:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST(INT16, INT, int)
     ^
../../include/groonga/groonga.h:1486:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
ts_expr_builder.c:318:16: note: in expansion of macro 'GRN_INT32_VALUE_AT'
       buf[i] = GRN_ ## TYPE ##_VALUE_AT(obj, i);\
                ^~~~
ts_expr_builder.c:337:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST(INT32, INT, int)
     ^
ts_expr_builder.c:295:40: warning: cast increases required alignment of target type [-Wcast-align]
     value.as_ ## kind ## _vector.ptr = (grn_ts_ ## kind *)GRN_BULK_HEAD(obj);\
                                        ^
ts_expr_builder.c:338:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE(INT64, INT, int)
     ^
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ts_expr_builder.h:21,
                 from ts_expr_builder.c:19:
../../include/groonga/groonga.h:1485:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE_AT(obj,offset) (((unsigned short *)GRN_BULK_HEAD(obj))[offset])
                                           ^
ts_expr_builder.c:318:16: note: in expansion of macro 'GRN_UINT16_VALUE_AT'
       buf[i] = GRN_ ## TYPE ##_VALUE_AT(obj, i);\
                ^~~~
ts_expr_builder.c:340:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST(UINT16, INT, int)
     ^
../../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
ts_expr_builder.c:318:16: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       buf[i] = GRN_ ## TYPE ##_VALUE_AT(obj, i);\
                ^~~~
ts_expr_builder.c:341:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST(UINT32, INT, int)
     ^
ts_expr_builder.c:295:40: warning: cast increases required alignment of target type [-Wcast-align]
     value.as_ ## kind ## _vector.ptr = (grn_ts_ ## kind *)GRN_BULK_HEAD(obj);\
                                        ^
ts_expr_builder.c:342:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE(UINT64, INT, int)
     ^
ts_expr_builder.c:295:40: warning: cast increases required alignment of target type [-Wcast-align]
     value.as_ ## kind ## _vector.ptr = (grn_ts_ ## kind *)GRN_BULK_HEAD(obj);\
                                        ^
ts_expr_builder.c:343:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE(TIME, TIME, time)
     ^
ts_expr_builder.c:295:40: warning: cast increases required alignment of target type [-Wcast-align]
     value.as_ ## kind ## _vector.ptr = (grn_ts_ ## kind *)GRN_BULK_HEAD(obj);\
                                        ^
ts_expr_builder.c:344:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE(TOKYO_GEO_POINT, GEO, geo)
     ^
ts_expr_builder.c:295:40: warning: cast increases required alignment of target type [-Wcast-align]
     value.as_ ## kind ## _vector.ptr = (grn_ts_ ## kind *)GRN_BULK_HEAD(obj);\
                                        ^
ts_expr_builder.c:345:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE(WGS84_GEO_POINT, GEO, geo)
     ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_expr_node.lo ts_expr_node.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_expr_parser.lo ts_expr_parser.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_op.lo ts_op.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_expr_parser.c  -fPIC -DPIC -o .libs/ts_expr_parser.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_expr_node.c  -fPIC -DPIC -o .libs/ts_expr_node.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_op.c  -fPIC -DPIC -o .libs/ts_op.o
ts_expr_parser.c: In function 'grn_ts_expr_token_close':
ts_expr_parser.c:249:22: warning: cast increases required alignment of target type [-Wcast-align]
     type ## _token = (grn_ts_expr_ ## type ## _token *)token;\
                      ^
ts_expr_parser.c:261:5: note: in expansion of macro 'GRN_TS_EXPR_TOKEN_CLOSE_CASE'
     GRN_TS_EXPR_TOKEN_CLOSE_CASE(CONST, const)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_plan.lo ts_plan.c
ts_expr_parser.c: In function 'grn_ts_expr_parser_analyze_token':
ts_expr_parser.c:1099:46: warning: cast increases required alignment of target type [-Wcast-align]
       grn_ts_expr_const_token *const_token = (grn_ts_expr_const_token *)token;
                                              ^
ts_expr_node.c: In function 'grn_ts_expr_column_node_evaluate_vector':
ts_expr_node.c:2751:20: warning: cast increases required alignment of target type [-Wcast-align]
         dest_ptr = (grn_ts_int *)((char *)node->buf.ptr + node->buf.pos);\
                    ^
ts_expr_node.c:2778:9: note: in expansion of macro 'GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE'
         GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE(INT8, int8)
         ^
ts_expr_node.c:2751:20: warning: cast increases required alignment of target type [-Wcast-align]
         dest_ptr = (grn_ts_int *)((char *)node->buf.ptr + node->buf.pos);\
                    ^
ts_expr_node.c:2779:9: note: in expansion of macro 'GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE'
         GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE(INT16, int16)
         ^
ts_expr_node.c:2751:20: warning: cast increases required alignment of target type [-Wcast-align]
         dest_ptr = (grn_ts_int *)((char *)node->buf.ptr + node->buf.pos);\
                    ^
ts_expr_node.c:2780:9: note: in expansion of macro 'GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE'
         GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE(INT32, int32)
         ^
ts_expr_node.c:2751:20: warning: cast increases required alignment of target type [-Wcast-align]
         dest_ptr = (grn_ts_int *)((char *)node->buf.ptr + node->buf.pos);\
                    ^
ts_expr_node.c:2781:9: note: in expansion of macro 'GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE'
         GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE(INT64, int64)
         ^
ts_expr_node.c:2751:20: warning: cast increases required alignment of target type [-Wcast-align]
         dest_ptr = (grn_ts_int *)((char *)node->buf.ptr + node->buf.pos);\
                    ^
ts_expr_node.c:2782:9: note: in expansion of macro 'GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE'
         GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE(UINT8, uint8)
         ^
ts_expr_node.c:2751:20: warning: cast increases required alignment of target type [-Wcast-align]
         dest_ptr = (grn_ts_int *)((char *)node->buf.ptr + node->buf.pos);\
                    ^
ts_expr_node.c:2783:9: note: in expansion of macro 'GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE'
         GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE(UINT16, uint16)
         ^
ts_expr_node.c:2751:20: warning: cast increases required alignment of target type [-Wcast-align]
         dest_ptr = (grn_ts_int *)((char *)node->buf.ptr + node->buf.pos);\
                    ^
ts_expr_node.c:2784:9: note: in expansion of macro 'GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE'
         GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE(UINT32, uint32)
         ^
ts_expr_node.c:2751:20: warning: cast increases required alignment of target type [-Wcast-align]
         dest_ptr = (grn_ts_int *)((char *)node->buf.ptr + node->buf.pos);\
                    ^
ts_expr_node.c:2786:9: note: in expansion of macro 'GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE'
         GRN_TS_EXPR_COLUMN_NODE_EVALUATE_VECTOR_INT_CASE(UINT64, uint64)
         ^
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_plan.c  -fPIC -DPIC -o .libs/ts_plan.o
ts_expr_node.c: In function 'grn_ts_expr_node_close':
ts_expr_node.c:5170:21: warning: cast increases required alignment of target type [-Wcast-align]
     type ## _node = (grn_ts_expr_ ## type ## _node *)node;\
                     ^
ts_expr_node.c:5182:5: note: in expansion of macro 'GRN_TS_EXPR_NODE_CLOSE_CASE'
     GRN_TS_EXPR_NODE_CLOSE_CASE(CONST, const)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
ts_expr_node.c: In function 'grn_ts_expr_node_evaluate':
ts_expr_node.c:5251:21: warning: cast increases required alignment of target type [-Wcast-align]
     type ## _node = (grn_ts_expr_ ## type ## _node *)node;\
                     ^
ts_expr_node.c:5264:5: note: in expansion of macro 'GRN_TS_EXPR_NODE_EVALUATE_CASE'
     GRN_TS_EXPR_NODE_EVALUATE_CASE(CONST, const)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ts_expr_node.c: In function 'grn_ts_expr_node_filter':
ts_expr_node.c:5318:21: warning: cast increases required alignment of target type [-Wcast-align]
     type ## _node = (grn_ts_expr_ ## type ## _node *)node;\
                     ^
ts_expr_node.c:5334:5: note: in expansion of macro 'GRN_TS_EXPR_NODE_FILTER_CASE'
     GRN_TS_EXPR_NODE_FILTER_CASE(CONST, const)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
ts_expr_node.c: In function 'grn_ts_expr_node_adjust':
ts_expr_node.c:5349:21: warning: cast increases required alignment of target type [-Wcast-align]
     type ## _node = (grn_ts_expr_ ## type ## _node *)node;\
                     ^
ts_expr_node.c:5364:5: note: in expansion of macro 'GRN_TS_EXPR_NODE_ADJUST_CASE'
     GRN_TS_EXPR_NODE_ADJUST_CASE(CONST, const)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_sorter.lo ts_sorter.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_sorter.c  -fPIC -DPIC -o .libs/ts_sorter.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_str.lo ts_str.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_str.c  -fPIC -DPIC -o .libs/ts_str.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_util.lo ts_util.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_util.c  -fPIC -DPIC -o .libs/ts_util.o
/bin/bash ../../libtool  --tag=CC   --mode=link gcc -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o libgrnts.la  ts_buf.lo ts_cursor.lo ts_expr.lo ts_expr_builder.lo ts_expr_node.lo ts_expr_parser.lo ts_op.lo ts_plan.lo ts_sorter.lo ts_str.lo ts_util.lo  -lz -ldl -lpthread -lm  
libtool: link: ar cru .libs/libgrnts.a .libs/ts_buf.o .libs/ts_cursor.o .libs/ts_expr.o .libs/ts_expr_builder.o .libs/ts_expr_node.o .libs/ts_expr_parser.o .libs/ts_op.o .libs/ts_plan.o .libs/ts_sorter.o .libs/ts_str.o .libs/ts_util.o 
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libgrnts.a
libtool: link: ( cd ".libs" && rm -f "libgrnts.la" && ln -s "../libgrnts.la" "libgrnts.la" )
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/ts'
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib'
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o alloc.lo alloc.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o cache.lo cache.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o column.lo column.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o com.lo com.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c cache.c  -fPIC -DPIC -o .libs/cache.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c com.c  -fPIC -DPIC -o .libs/com.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c alloc.c  -fPIC -DPIC -o .libs/alloc.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c column.c  -fPIC -DPIC -o .libs/column.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o command.lo command.c
cache.c: In function 'grn_cache_open':
cache.c:63:17: warning: cast increases required alignment of target type [-Wcast-align]
   cache->next = (grn_cache_entry *)cache;
                 ^
cache.c:64:17: warning: cast increases required alignment of target type [-Wcast-align]
   cache->prev = (grn_cache_entry *)cache;
                 ^
cache.c: In function 'grn_cache_fetch':
cache.c:194:30: warning: cast increases required alignment of target type [-Wcast-align]
       grn_cache_entry *ce0 = (grn_cache_entry *)cache;
                              ^
cache.c: In function 'grn_cache_update':
cache.c:254:30: warning: cast increases required alignment of target type [-Wcast-align]
       grn_cache_entry *ce0 = (grn_cache_entry *)cache;
                              ^
cache.c: In function 'grn_cache_expire':
cache.c:275:26: warning: cast increases required alignment of target type [-Wcast-align]
   grn_cache_entry *ce0 = (grn_cache_entry *)cache;
                          ^
alloc.c: In function 'grn_ctx_alloc':
alloc.c:419:16: warning: cast increases required alignment of target type [-Wcast-align]
       header = (int32_t *)((byte *)mi->map + mi->nref);
                ^
com.c: In function 'grn_msg_open':
com.c:131:21: warning: cast increases required alignment of target type [-Wcast-align]
   if (old && (msg = (grn_msg *)grn_com_queue_deque(ctx, old))) {
                     ^
com.c: In function 'grn_msg_open_for_reply':
com.c:152:18: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *req = (grn_msg *)query, *msg = NULL;
                  ^
com.c:153:21: warning: cast increases required alignment of target type [-Wcast-align]
   if (req && (msg = (grn_msg *)grn_msg_open(ctx, req->u.peer, old))) {
                     ^
com.c: In function 'grn_msg_close':
com.c:164:18: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *msg = (grn_msg *)obj;
                  ^
com.c: In function 'grn_msg_set_property':
com.c:173:30: warning: cast increases required alignment of target type [-Wcast-align]
   grn_com_header *header = &((grn_msg *)obj)->header;
                              ^
com.c: In function 'grn_msg_send':
com.c:184:16: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *m = (grn_msg *)msg;
                ^
com.c: In function 'grn_com_receiver':
com.c:529:20: warning: cast increases required alignment of target type [-Wcast-align]
     grn_msg *msg = (grn_msg *)grn_msg_open(ctx, com, &ev->recv_old);
                    ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o config.lo config.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c command.c  -fPIC -DPIC -o .libs/command.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ctx.lo ctx.c
command.c: In function 'grn_command_input_at':
command.c:125:16: warning: cast increases required alignment of target type [-Wcast-align]
     argument = (grn_obj *)grn_hash_get_value_(ctx, input->arguments,
                ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c config.c  -fPIC -DPIC -o .libs/config.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ctx_impl_mrb.lo ctx_impl_mrb.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ctx.c  -fPIC -DPIC -o .libs/ctx.o
ctx.c: In function 'grn_ctx_loader_clear':
ctx.c:170:16: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj *v = (grn_obj *)(GRN_BULK_HEAD(&loader->values));
                ^
ctx.c:171:17: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj *ve = (grn_obj *)(GRN_BULK_CURR(&loader->values));
                 ^
ctx.c:172:17: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **p = (grn_obj **)GRN_BULK_HEAD(&loader->columns);
                 ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ctx_impl_mrb.c  -fPIC -DPIC -o .libs/ctx_impl_mrb.o
ctx.c: In function 'grn_ctx_fin':
ctx.c:429:16: warning: cast increases required alignment of target type [-Wcast-align]
       spaces = (grn_obj *)GRN_BULK_HEAD(stack);
                ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from ctx.c:19:
ctx.c: In function 'grn_get_ctype':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
ctx.c:881:10: note: in expansion of macro 'GRN_INT32_VALUE'
     ct = GRN_INT32_VALUE(var);
          ^~~~~~~~~~~~~~~
ctx.c: In function 'grn_ctx_use':
ctx.c:1506:26: warning: cast increases required alignment of target type [-Wcast-align]
         ctx->encoding = *(grn_encoding *)GRN_BULK_HEAD(&buf);
                          ^
/bin/bash ../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o dat.lo dat.cpp
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o db.lo db.c
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c dat.cpp  -fPIC -DPIC -o .libs/dat.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c db.c  -fPIC -DPIC -o .libs/db.o
In file included from grn_db.h:24:0,
                 from grn_config.h:21,
                 from db.c:19:
db.c: In function 'calc_rec_size':
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
db.c:997:30: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
     *value_size = (uintptr_t)GRN_RSET_SUBRECS_NTH((((grn_rset_recinfo *)0)->subrecs),
                              ^~~~~~~~~~~~~~~~~~~~
db.c: In function 'grn_table_get_subrecs':
db.c:1326:10: warning: cast increases required alignment of target type [-Wcast-align]
     ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, table, id, &value_size);
          ^
db.c:1342:31: warning: cast increases required alignment of target type [-Wcast-align]
           scorebuf[count] = *((double *)psubrec);
                               ^
db.c:1346:32: warning: cast increases required alignment of target type [-Wcast-align]
           subrecbuf[count] = *((grn_id *)psubrec);
                                ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'grn_obj_default_set_value_hook':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:1461:30: note: in expansion of macro 'GRN_UINT32_VALUE'
                              GRN_UINT32_VALUE(id),
                              ^~~~~~~~~~~~~~~~
db.c: In function 'delete_reference_records_in_index':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
db.c:1925:17: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
     source_id = GRN_UINT32_VALUE_AT(&source_ids, i);
                 ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:1947:23: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *source = GRN_PTR_VALUE_AT(&sources, posting->sid - 1);
                       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
db.c:1968:37: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
               grn_id reference_id = GRN_RECORD_VALUE_AT(&value, i);
                                     ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:2016:25: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       grn_obj *source = GRN_PTR_VALUE_AT(&sources, i);
                         ^~~~~~~~~~~~~~~~
In file included from grn_db.h:24:0,
                 from grn_config.h:21,
                 from db.c:19:
db.c: In function 'subrecs_push':
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
db.c:2400:10: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
     c2 = GRN_RSET_SUBRECS_NTH(subrecs,size,n2);
          ^~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:21:0,
                 from grn.h:761,
                 from db.c:18:
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
../include/groonga/portability.h:31:44: note: in definition of macro 'grn_memcpy'
 #  define grn_memcpy(dest, src, n) memcpy((dest), (src), (n))
                                            ^~~~
grn_rset.h:57:15: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
   (grn_memcpy(GRN_RSET_SUBRECS_NTH(subrecs, size, n), src, GRN_RSET_SUBREC_SIZE(size)))
               ^~~~~~~~~~~~~~~~~~~~
db.c:2402:5: note: in expansion of macro 'GRN_RSET_SUBRECS_COPY'
     GRN_RSET_SUBRECS_COPY(subrecs,size,n,c2);
     ^~~~~~~~~~~~~~~~~~~~~
db.c:2406:5: warning: cast increases required alignment of target type [-Wcast-align]
   *((double *)v) = score;
     ^
In file included from grn_db.h:24:0,
                 from grn_config.h:21,
                 from db.c:19:
db.c: In function 'subrecs_replace_min':
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
db.c:2419:27: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
     c1 = n1 < n_subrecs ? GRN_RSET_SUBRECS_NTH(subrecs,size,n1) : NULL;
                           ^~~~~~~~~~~~~~~~~~~~
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
db.c:2420:27: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
     c2 = n2 < n_subrecs ? GRN_RSET_SUBRECS_NTH(subrecs,size,n2) : NULL;
                           ^~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:21:0,
                 from grn.h:761,
                 from db.c:18:
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
../include/groonga/portability.h:31:44: note: in definition of macro 'grn_memcpy'
 #  define grn_memcpy(dest, src, n) memcpy((dest), (src), (n))
                                            ^~~~
grn_rset.h:57:15: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
   (grn_memcpy(GRN_RSET_SUBRECS_NTH(subrecs, size, n), src, GRN_RSET_SUBREC_SIZE(size)))
               ^~~~~~~~~~~~~~~~~~~~
db.c:2425:9: note: in expansion of macro 'GRN_RSET_SUBRECS_COPY'
         GRN_RSET_SUBRECS_COPY(subrecs,size,n,c2);
         ^~~~~~~~~~~~~~~~~~~~~
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
../include/groonga/portability.h:31:44: note: in definition of macro 'grn_memcpy'
 #  define grn_memcpy(dest, src, n) memcpy((dest), (src), (n))
                                            ^~~~
grn_rset.h:57:15: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
   (grn_memcpy(GRN_RSET_SUBRECS_NTH(subrecs, size, n), src, GRN_RSET_SUBREC_SIZE(size)))
               ^~~~~~~~~~~~~~~~~~~~
db.c:2428:9: note: in expansion of macro 'GRN_RSET_SUBRECS_COPY'
         GRN_RSET_SUBRECS_COPY(subrecs,size,n,c1);
         ^~~~~~~~~~~~~~~~~~~~~
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
../include/groonga/portability.h:31:44: note: in definition of macro 'grn_memcpy'
 #  define grn_memcpy(dest, src, n) memcpy((dest), (src), (n))
                                            ^~~~
grn_rset.h:57:15: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
   (grn_memcpy(GRN_RSET_SUBRECS_NTH(subrecs, size, n), src, GRN_RSET_SUBREC_SIZE(size)))
               ^~~~~~~~~~~~~~~~~~~~
db.c:2433:9: note: in expansion of macro 'GRN_RSET_SUBRECS_COPY'
         GRN_RSET_SUBRECS_COPY(subrecs,size,n,c2);
         ^~~~~~~~~~~~~~~~~~~~~
In file included from grn_db.h:24:0,
                 from grn_config.h:21,
                 from db.c:19:
db.c: In function 'grn_table_add_subrec_inline':
db.c:2459:45: warning: cast increases required alignment of target type [-Wcast-align]
           if (GRN_RSET_SUBRECS_CMP(score, *((double *)(ri->subrecs)), dir) > 0) {
                                             ^
grn_rset.h:53:48: note: in definition of macro 'GRN_RSET_SUBRECS_CMP'
 #define GRN_RSET_SUBRECS_CMP(a,b,dir) (((a) - (b))*(dir))
                                                ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'grn_accessor_resolve_one_index_column':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
db.c:3170:19: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       source_id = GRN_UINT32_VALUE_AT(&source_ids, i);
                   ^~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:35:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
../include/groonga/hash.h:81:7: note: in definition of macro 'GRN_HASH_EACH'
       block\
       ^~~~~
db.c:3226:27: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
         add_posting.rid = GRN_RECORD_VALUE_AT(&column_value, i);
                           ^~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'grn_accessor_resolve':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:3451:25: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     a = (grn_accessor *)GRN_PTR_VALUE_AT(&accessor_stack, i - 1);
                         ^~~~~~~~~~~~~~~~
db.c: In function 'grn_obj_search_column_index':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:3681:22: note: in expansion of macro 'GRN_RECORD_VALUE'
         grn_id tid = GRN_RECORD_VALUE(query);
                      ^~~~~~~~~~~~~~~~
db.c: In function 'accelerated_table_group':
db.c:3834:21: warning: cast increases required alignment of target type [-Wcast-align]
               id_ = (grn_id *)_grn_table_key(ctx, table, id, &key_size);
                     ^
db.c:3866:21: warning: cast increases required alignment of target type [-Wcast-align]
               id_ = (grn_id *)_grn_table_key(ctx, table, id, &key_size);
                     ^
db.c: In function 'grn_table_group_single_key_records':
db.c:3941:29: warning: cast increases required alignment of target type [-Wcast-align]
               grn_id id = *((grn_id *)element);
                             ^
db.c:3983:26: warning: cast increases required alignment of target type [-Wcast-align]
           if ((!idp || *((grn_id *)GRN_BULK_HEAD(&bulk))) &&
                          ^
db.c: In function 'grn_table_group_with_range_gap':
db.c:4075:21: warning: cast increases required alignment of target type [-Wcast-align]
               id_ = (grn_id *)_grn_table_key(ctx, table, id, &key_size);
                     ^
db.c:4116:21: warning: cast increases required alignment of target type [-Wcast-align]
               id_ = (grn_id *)_grn_table_key(ctx, table, id, &key_size);
                     ^
db.c: In function 'grn_table_group_multi_keys_vector_record':
db.c:4276:15: warning: cast increases required alignment of target type [-Wcast-align]
         ids = (grn_id *)GRN_BULK_HEAD(key_buffer);
               ^
db.c: In function 'grn_uvector_get_element':
db.c:5519:21: warning: cast increases required alignment of target type [-Wcast-align]
     entries_start = (const weight_uvector_entry *)GRN_BULK_HEAD(uvector);
                     ^
db.c:5520:19: warning: cast increases required alignment of target type [-Wcast-align]
     entries_end = (const weight_uvector_entry *)GRN_BULK_CURR(uvector);
                   ^
db.c:5533:17: warning: cast increases required alignment of target type [-Wcast-align]
     ids_start = (const grn_id *)GRN_BULK_HEAD(uvector);
                 ^
db.c:5534:15: warning: cast increases required alignment of target type [-Wcast-align]
     ids_end = (const grn_id *)GRN_BULK_CURR(uvector);
               ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'grn_obj_cast_bool':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6196:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();
     ^~~~~~~~~~
db.c: In function 'grn_obj_cast_record':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1379:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
db.c:6306:31: note: in expansion of macro 'GRN_RECORD_VALUE'
     GRN_RECORD_SET(ctx, dest, GRN_RECORD_VALUE(src));
                               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6331:7: note: in expansion of macro 'GRN_RECORD_VALUE'
   if (GRN_RECORD_VALUE(src) == GRN_ID_NIL) {
       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1379:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
db.c:6332:31: note: in expansion of macro 'GRN_RECORD_VALUE'
     GRN_RECORD_SET(ctx, dest, GRN_RECORD_VALUE(src));
                               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6336:40: note: in expansion of macro 'GRN_RECORD_VALUE'
   key = _grn_table_key(ctx, src_table, GRN_RECORD_VALUE(src), &key_size);
                                        ^~~~~~~~~~~~~~~~
db.c: In function 'grn_obj_cast':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6356:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT8_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6359:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT8_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1338:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6205:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6205:23: note: in expansion of macro 'GRN_INT16_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6226:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6226:23: note: in expansion of macro 'GRN_INT16_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_INT16_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6240:23: note: in expansion of macro 'GRN_INT16_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1338:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6205:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6205:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6226:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6226:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_UINT16_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6240:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1338:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6205:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6205:23: note: in expansion of macro 'GRN_INT32_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6226:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6226:23: note: in expansion of macro 'GRN_INT32_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_INT32_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6240:23: note: in expansion of macro 'GRN_INT32_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1338:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6205:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6205:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6226:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6226:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_UINT32_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6240:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1338:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6205:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6205:23: note: in expansion of macro 'GRN_INT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6226:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6226:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_INT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6240:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1338:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6205:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6205:23: note: in expansion of macro 'GRN_INT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6226:5: note: in expansion of macro 'TIME2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6226:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'TIME2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_INT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6240:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1338:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6205:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6205:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6226:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6226:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_UINT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6240:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6273:19: note: in definition of macro 'FLOAT2BOOL'
   double value_ = value;\
                   ^~~~~
db.c:6205:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6282:26: note: in definition of macro 'FLOAT2TIME'
   int64_t usec = llround(value * GRN_TIME_USEC_PER_SEC);\
                          ^~~~~
db.c:6226:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'FLOAT2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6240:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6533:7: note: in expansion of macro 'SRC2RECORD'
       SRC2RECORD();
       ^~~~~~~~~~
../include/groonga/groonga.h:1476:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
db.c:6544:7: note: in expansion of macro 'GRN_GEO_POINT_VALUE'
       GRN_GEO_POINT_VALUE(src, latitude, longitude);
       ^~~~~~~~~~~~~~~~~~~
db.c: In function 'grn_accessor_get_value_':
db.c:6642:33: warning: cast increases required alignment of target type [-Wcast-align]
         value = (const char *)&((grn_rset_recinfo *)value)->score;
                                 ^
db.c:6648:33: warning: cast increases required alignment of target type [-Wcast-align]
         value = (const char *)&((grn_rset_recinfo *)value)->n_subrecs;
                                 ^
db.c:6656:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6665:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6674:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6683:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6703:14: warning: cast increases required alignment of target type [-Wcast-align]
       id = *((grn_id *)value);
              ^
db.c: In function 'grn_accessor_get_value':
db.c:6765:32: warning: cast increases required alignment of target type [-Wcast-align]
         grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                ^
db.c:6774:32: warning: cast increases required alignment of target type [-Wcast-align]
         grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                ^
db.c:6783:32: warning: cast increases required alignment of target type [-Wcast-align]
         grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                ^
db.c:6794:32: warning: cast increases required alignment of target type [-Wcast-align]
         grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                ^
db.c:6805:32: warning: cast increases required alignment of target type [-Wcast-align]
         grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                ^
db.c:6816:32: warning: cast increases required alignment of target type [-Wcast-align]
         grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                ^
db.c: In function 'grn_accessor_set_value':
db.c:6886:18: warning: cast increases required alignment of target type [-Wcast-align]
             ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                  ^
db.c:6890:23: warning: cast increases required alignment of target type [-Wcast-align]
             if ((ri = (grn_rset_recinfo *) grn_obj_get_value_(ctx, a->obj, id, &size))) {
                       ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6893:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
                 ri->score = GRN_FLOAT_VALUE(value);
                             ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6898:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
                 ri->score = GRN_FLOAT_VALUE(&buf);
                             ^~~~~~~~~~~~~~~
db.c:6908:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                                  ^
db.c:6915:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                                  ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6917:55: note: in expansion of macro 'GRN_INT64_VALUE'
             grn_rset_recinfo_set_max(ctx, ri, a->obj, GRN_INT64_VALUE(value));
                                                       ^~~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o dump.lo dump.c
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6923:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:6932:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                                  ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6934:55: note: in expansion of macro 'GRN_INT64_VALUE'
             grn_rset_recinfo_set_min(ctx, ri, a->obj, GRN_INT64_VALUE(value));
                                                       ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6940:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:6949:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                                  ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6951:55: note: in expansion of macro 'GRN_INT64_VALUE'
             grn_rset_recinfo_set_sum(ctx, ri, a->obj, GRN_INT64_VALUE(value));
                                                       ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6957:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:6966:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                                  ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6968:55: note: in expansion of macro 'GRN_FLOAT_VALUE'
             grn_rset_recinfo_set_avg(ctx, ri, a->obj, GRN_FLOAT_VALUE(value));
                                                       ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6974:40: note: in expansion of macro 'GRN_FLOAT_VALUE'
                                        GRN_FLOAT_VALUE(&value_float));
                                        ^~~~~~~~~~~~~~~
db.c: In function 'grn_obj_set_value_column_var_size_vector_uvector':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:7378:21: note: in expansion of macro 'GRN_RECORD_VALUE'
         casted_id = GRN_RECORD_VALUE(&casted_record);
                     ^~~~~~~~~~~~~~~~
db.c: In function 'grn_token_filters_pack':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:8334:29: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *token_filter = GRN_PTR_VALUE_AT(token_filters, i);
                             ^~~~~~~~~~~~~~~~
db.c: In function 'grn_obj_set_info_source_validate':
db.c:8498:16: warning: cast increases required alignment of target type [-Wcast-align]
   source_ids = (grn_id *)GRN_BULK_HEAD(value);
                ^
db.c: In function 'grn_obj_set_info_source_log':
db.c:8580:16: warning: cast increases required alignment of target type [-Wcast-align]
   grn_id *vp = (grn_id *)GRN_BULK_HEAD(value);
                ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'grn_obj_set_info_token_filters':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:8684:29: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *token_filter = GRN_PTR_VALUE_AT(token_filters, i);
                             ^~~~~~~~~~~~~~~~
db.c: In function 'remove_reference_tables':
db.c:9298:20: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id id = ((grn_id *)GRN_BULK_HEAD(&not_opened_ids))[i];
                    ^
db.c: In function 'is_removable_table':
db.c:9424:20: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id id = ((grn_id *)GRN_BULK_HEAD(&not_opened_ids))[i];
                    ^
db.c: In function 'grn_ctx_at':
db.c:10261:19: warning: cast increases required alignment of target type [-Wcast-align]
         tmp_obj = (grn_obj **)grn_pat_get_value_(ctx,
                   ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'grn_pvector_fin':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:10562:26: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       grn_obj *element = GRN_PTR_VALUE_AT(obj, n_elements - i - 1);
                          ^~~~~~~~~~~~~~~~
db.c: In function 'grn_obj_close':
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
db.c:10651:30: note: in expansion of macro 'GRN_PTR_VALUE'
           grn_obj_close(ctx, GRN_PTR_VALUE(obj));
                              ^~~~~~~~~~~~~
db.c: In function 'grn_obj_reinit':
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
db.c:10838:30: note: in expansion of macro 'GRN_PTR_VALUE'
           grn_obj_close(ctx, GRN_PTR_VALUE(obj));
                              ^~~~~~~~~~~~~
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:10848:30: note: in expansion of macro 'GRN_PTR_VALUE_AT'
           grn_obj *element = GRN_PTR_VALUE_AT(obj, i);
                              ^~~~~~~~~~~~~~~~
db.c: In function 'compare_reference':
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11587:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11587:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11590:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11590:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11593:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11593:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11599:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11599:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11602:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11602:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11605:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11605:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11610:24: warning: cast increases required alignment of target type [-Wcast-align]
           float va = *((float *)(ap));
                        ^
db.c:11611:24: warning: cast increases required alignment of target type [-Wcast-align]
           float vb = *((float *)(bp));
                        ^
db.c:11623:25: warning: cast increases required alignment of target type [-Wcast-align]
           double va = *((double *)(ap));
                         ^
db.c:11624:25: warning: cast increases required alignment of target type [-Wcast-align]
           double vb = *((double *)(bp));
                         ^
db.c: In function 'compare_value':
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11823:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11823:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11826:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11826:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11829:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11829:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11835:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11835:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11838:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11838:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11841:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11841:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11846:24: warning: cast increases required alignment of target type [-Wcast-align]
           float va = *((float *)(ap));
                        ^
db.c:11847:24: warning: cast increases required alignment of target type [-Wcast-align]
           float vb = *((float *)(bp));
                        ^
db.c:11859:25: warning: cast increases required alignment of target type [-Wcast-align]
           double va = *((double *)(ap));
                         ^
db.c:11860:25: warning: cast increases required alignment of target type [-Wcast-align]
           double vb = *((double *)(bp));
                         ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts.lo ts.c
db.c: In function 'values_add':
db.c:13568:11: warning: cast increases required alignment of target type [-Wcast-align]
     res = (grn_obj *)(GRN_TEXT_VALUE(&loader->values) + curr_size);
           ^
db.c:13573:11: warning: cast increases required alignment of target type [-Wcast-align]
     res = (grn_obj *)(GRN_TEXT_VALUE(&loader->values) + curr_size);
           ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'values_next':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13586:14: note: in expansion of macro 'GRN_UINT32_VALUE'
     value += GRN_UINT32_VALUE(value);
              ^~~~~~~~~~~~~~~~
db.c: In function 'set_vector':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13620:11: note: in expansion of macro 'GRN_UINT32_VALUE'
   int n = GRN_UINT32_VALUE(vector);
           ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1517:38: note: in definition of macro 'GRN_UINT32_PUT'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:13641:35: note: in expansion of macro 'GRN_RECORD_VALUE'
         GRN_UINT32_PUT(ctx, &buf, GRN_RECORD_VALUE(element));
                                   ^~~~~~~~~~~~~~~~
db.c: In function 'set_weight_vector':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13718:9: note: in expansion of macro 'GRN_UINT32_VALUE'
     n = GRN_UINT32_VALUE(index_value);
         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13739:30: note: in expansion of macro 'GRN_UINT32_VALUE'
                              GRN_UINT32_VALUE(&weight_buffer),
                              ^~~~~~~~~~~~~~~~
db.c: In function 'parse_id_value':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13794:12: note: in expansion of macro 'GRN_UINT32_VALUE'
     return GRN_UINT32_VALUE(value);
            ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:13796:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(value);
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13813:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&casted_value);
              ^~~~~~~~~~~~~~~~
db.c: In function 'bracket_close':
db.c:13832:10: warning: cast increases required alignment of target type [-Wcast-align]
   cols = (grn_obj **)GRN_BULK_HEAD(&loader->columns);
          ^
In file included from grn_config.h:21:0,
                 from db.c:19:
grn_db.h:419:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(uint32_t *)(GRN_BULK_CURR(obj));\
              ^
db.c:13834:3: note: in expansion of macro 'GRN_UINT32_POP'
   GRN_UINT32_POP(&loader->level, begin);
   ^~~~~~~~~~~~~~
db.c:13835:11: warning: cast increases required alignment of target type [-Wcast-align]
   value = (grn_obj *)GRN_TEXT_VALUE(&loader->values) + begin;
           ^
db.c:13836:15: warning: cast increases required alignment of target type [-Wcast-align]
   value_end = (grn_obj *)GRN_TEXT_VALUE(&loader->values) + loader->values_size;
               ^
In file included from grn_config.h:21:0,
                 from db.c:19:
db.c: In function 'brace_close':
grn_db.h:419:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(uint32_t *)(GRN_BULK_CURR(obj));\
              ^
db.c:14024:3: note: in expansion of macro 'GRN_UINT32_POP'
   GRN_UINT32_POP(&loader->level, begin);
   ^~~~~~~~~~~~~~
db.c:14025:17: warning: cast increases required alignment of target type [-Wcast-align]
   value_begin = (grn_obj *)GRN_TEXT_VALUE(&loader->values) + begin;
                 ^
db.c:14026:15: warning: cast increases required alignment of target type [-Wcast-align]
   value_end = (grn_obj *)GRN_TEXT_VALUE(&loader->values) + loader->values_size;
               ^
db.c: In function 'grn_ctx_push_temporary_open_space':
db.c:14966:12: warning: cast increases required alignment of target type [-Wcast-align]
   space = ((grn_obj *)GRN_BULK_CURR(stack)) - 1;
            ^
db.c: In function 'grn_ctx_pop_temporary_open_space':
db.c:14996:14: warning: cast increases required alignment of target type [-Wcast-align]
     space = ((grn_obj *)GRN_BULK_CURR(stack)) - 1;
              ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'grn_ctx_merge_temporary_open_space':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:15026:26: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       grn_obj *element = GRN_PTR_VALUE_AT(space, i);
                          ^~~~~~~~~~~~~~~~
db.c:15037:14: warning: cast increases required alignment of target type [-Wcast-align]
     space = ((grn_obj *)GRN_BULK_CURR(stack)) - 1;
              ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c dump.c  -fPIC -DPIC -o .libs/dump.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o type.lo type.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts.c  -fPIC -DPIC -o .libs/ts.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o error.lo error.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c type.c  -fPIC -DPIC -o .libs/type.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c error.c  -fPIC -DPIC -o .libs/error.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o expr.lo expr.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o expr_code.lo expr_code.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o geo.lo geo.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c expr.c  -fPIC -DPIC -o .libs/expr.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c expr_code.c  -fPIC -DPIC -o .libs/expr_code.o
expr.c: In function 'grn_expr_dfi_pop':
expr.c:486:11: warning: cast increases required alignment of target type [-Wcast-align]
     dfi = (grn_expr_dfi *)GRN_BULK_CURR(&expr->dfi);
           ^
expr.c: In function 'grn_expr_close':
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
expr.c:617:5: note: in expansion of macro 'GRN_PTR_POP'
     GRN_PTR_POP(&e->objs, obj);
     ^~~~~~~~~~~
expr.c: In function 'grn_expr_get_var_by_offset':
expr.c:728:21: warning: cast increases required alignment of target type [-Wcast-align]
   if (vars) { res = (grn_obj *)grn_hash_get_value_(ctx, vars, offset + 1, NULL); }
                     ^
expr.c: In function 'grn_expr_append_obj':
expr.c:838:26: warning: cast increases required alignment of target type [-Wcast-align]
     grn_expr_dfi *dfis = (grn_expr_dfi *)GRN_BULK_HEAD(&e->dfi);
                          ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:760:17: note: in expansion of macro 'GRN_INT32_VALUE'
         value = GRN_INT32_VALUE(x);                             \
                 ^~~~~~~~~~~~~~~
expr.c:1068:9: note: in expansion of macro 'APPEND_UNARY_MINUS_OP'
         APPEND_UNARY_MINUS_OP(e);
         ^~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:773:17: note: in expansion of macro 'GRN_UINT32_VALUE'
         value = GRN_UINT32_VALUE(x);                            \
                 ^~~~~~~~~~~~~~~~
expr.c:1068:9: note: in expansion of macro 'APPEND_UNARY_MINUS_OP'
         APPEND_UNARY_MINUS_OP(e);
         ^~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:786:30: note: in expansion of macro 'GRN_INT64_VALUE'
       GRN_INT64_SET(ctx, x, -GRN_INT64_VALUE(x));               \
                              ^~~~~~~~~~~~~~~
expr.c:1068:9: note: in expansion of macro 'APPEND_UNARY_MINUS_OP'
         APPEND_UNARY_MINUS_OP(e);
         ^~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:789:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
       GRN_FLOAT_SET(ctx, x, -GRN_FLOAT_VALUE(x));               \
                              ^~~~~~~~~~~~~~~
expr.c:1068:9: note: in expansion of macro 'APPEND_UNARY_MINUS_OP'
         APPEND_UNARY_MINUS_OP(e);
         ^~~~~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_expr_exec_get_member_vector':
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2404:12: note: in expansion of macro 'GRN_PTR_VALUE'
   column = GRN_PTR_VALUE(column_and_record_id);
            ^~~~~~~~~~~~~
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
expr.c:2405:30: note: in expansion of macro 'GRN_PTR_VALUE_AT'
   record_id = *((grn_id *)(&(GRN_PTR_VALUE_AT(column_and_record_id, 1))));
                              ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2409:7: note: in expansion of macro 'GRN_UINT32_VALUE'
   i = GRN_UINT32_VALUE(index);
       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
expr.c:2416:15: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
       value = GRN_RECORD_VALUE_AT(&values, i);
               ^~~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_expr_exec':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1517:38: note: in definition of macro 'GRN_UINT32_PUT'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:2567:38: note: in expansion of macro 'GRN_RECORD_VALUE'
             GRN_UINT32_PUT(ctx, res, GRN_RECORD_VALUE(rec));
                                      ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2617:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           obj = GRN_OBJ_RESOLVE(ctx, obj);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2617:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           obj = GRN_OBJ_RESOLVE(ctx, obj);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2632:24: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value_type = GRN_OBJ_RESOLVE(ctx, value_type);
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2632:24: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value_type = GRN_OBJ_RESOLVE(ctx, value_type);
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2634:22: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           key_type = GRN_OBJ_RESOLVE(ctx, key_type);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2634:22: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           key_type = GRN_OBJ_RESOLVE(ctx, key_type);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2636:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           flags = GRN_OBJ_RESOLVE(ctx, flags);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2636:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           flags = GRN_OBJ_RESOLVE(ctx, flags);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2638:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2638:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2640:40: note: in expansion of macro 'GRN_UINT32_VALUE'
                                  NULL, GRN_UINT32_VALUE(flags),
                                        ^~~~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o hash.lo hash.c
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2650:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2650:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2652:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2652:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2655:72: note: in expansion of macro 'GRN_INT32_VALUE'
             res = grn_expr_get_var_by_offset(ctx, expr, (unsigned int) GRN_INT32_VALUE(name));
                                                                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2658:72: note: in expansion of macro 'GRN_UINT32_VALUE'
             res = grn_expr_get_var_by_offset(ctx, expr, (unsigned int) GRN_UINT32_VALUE(name));
                                                                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2661:72: note: in expansion of macro 'GRN_INT64_VALUE'
             res = grn_expr_get_var_by_offset(ctx, expr, (unsigned int) GRN_INT64_VALUE(name));
                                                                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2664:72: note: in expansion of macro 'GRN_UINT64_VALUE'
             res = grn_expr_get_var_by_offset(ctx, expr, (unsigned int) GRN_UINT64_VALUE(name));
                                                                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2687:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value = GRN_OBJ_RESOLVE(ctx, value);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2687:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value = GRN_OBJ_RESOLVE(ctx, value);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2692:28: note: in expansion of macro 'GRN_PTR_VALUE'
             grn_obj *col = GRN_PTR_VALUE(var);
                            ^~~~~~~~~~~~~
expr.c:2693:27: warning: cast increases required alignment of target type [-Wcast-align]
             grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));
                           ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c geo.c  -fPIC -DPIC -o .libs/geo.o
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from grn_geo.h:21:0,
                 from geo.c:18:
geo.c: In function 'compute_min_and_max':
grn.h:697:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
geo.c:126:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((uint8_t *)geo_min, geo_key_min, sizeof(grn_geo_point));
     ^~~~~~~~
grn.h:698:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
geo.c:126:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((uint8_t *)geo_min, geo_key_min, sizeof(grn_geo_point));
     ^~~~~~~~
grn.h:697:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
geo.c:129:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((uint8_t *)geo_max, geo_key_max, sizeof(grn_geo_point));
     ^~~~~~~~
grn.h:698:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
geo.c:129:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((uint8_t *)geo_max, geo_key_max, sizeof(grn_geo_point));
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
geo.c: In function 'grn_geo_table_sort':
geo.c:737:37: warning: cast increases required alignment of target type [-Wcast-align]
         grn_geo_point *base_point = (grn_geo_point *)GRN_BULK_HEAD(geo_point);
                                     ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from geo.c:18:0:
geo.c: In function 'grn_geo_select_in_circle':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:899:12: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
   center = GRN_GEO_POINT_VALUE_RAW(center_point);
            ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_geo.h:21,
                 from geo.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:914:9: note: in expansion of macro 'GRN_INT32_VALUE'
     d = GRN_INT32_VALUE(distance);
         ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
geo.c:919:9: note: in expansion of macro 'GRN_UINT32_VALUE'
     d = GRN_UINT32_VALUE(distance);
         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:924:9: note: in expansion of macro 'GRN_INT64_VALUE'
     d = GRN_INT64_VALUE(distance);
         ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
geo.c:929:9: note: in expansion of macro 'GRN_UINT64_VALUE'
     d = GRN_UINT64_VALUE(distance);
         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:934:9: note: in expansion of macro 'GRN_FLOAT_VALUE'
     d = GRN_FLOAT_VALUE(distance);
         ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
geo.c:951:5: note: in expansion of macro 'GRN_GEO_POINT_VALUE'
     GRN_GEO_POINT_VALUE(point_on_circle,
     ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from geo.c:18:0:
geo.c: In function 'in_rectangle_data_fill':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:1085:20: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
   data->top_left = GRN_GEO_POINT_VALUE_RAW(top_left_point);
                    ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:1100:24: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
   data->bottom_right = GRN_GEO_POINT_VALUE_RAW(bottom_right_point);
                        ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from grn_geo.h:21:0,
                 from geo.c:18:
geo.c: In function 'grn_geo_cursor_entry_next_push':
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn.h:697:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
geo.c:1556:3: note: in expansion of macro 'grn_ntog'
   grn_ntog((uint8_t*)(&entry_base), entry->key, sizeof(grn_geo_point));
   ^~~~~~~~
grn.h:698:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
geo.c:1556:3: note: in expansion of macro 'grn_ntog'
   grn_ntog((uint8_t*)(&entry_base), entry->key, sizeof(grn_geo_point));
   ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
geo.c: In function 'grn_geo_cursor_each':
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn.h:697:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
geo.c:1847:7: note: in expansion of macro 'grn_ntog'
       grn_ntog((uint8_t*)(&entry_base), entry.key, sizeof(grn_geo_point));
       ^~~~~~~~
grn.h:698:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
geo.c:1847:7: note: in expansion of macro 'grn_ntog'
       grn_ntog((uint8_t*)(&entry_base), entry.key, sizeof(grn_geo_point));
       ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from geo.c:18:0:
geo.c: In function 'grn_geo_in_circle':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2128:27: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                           GRN_GEO_POINT_VALUE_RAW(point),
                           ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2129:27: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                           GRN_GEO_POINT_VALUE_RAW(center));
                           ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_geo.h:21,
                 from geo.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:2132:16: note: in expansion of macro 'GRN_INT32_VALUE'
       r = d <= GRN_INT32_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
geo.c:2135:16: note: in expansion of macro 'GRN_UINT32_VALUE'
       r = d <= GRN_UINT32_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:2138:16: note: in expansion of macro 'GRN_INT64_VALUE'
       r = d <= GRN_INT64_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
geo.c:2141:16: note: in expansion of macro 'GRN_UINT64_VALUE'
       r = d <= GRN_UINT64_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:2144:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
       r = d <= GRN_FLOAT_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from geo.c:18:0:
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2157:34: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                  GRN_GEO_POINT_VALUE_RAW(radius_or_point),
                                  ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2158:34: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                  GRN_GEO_POINT_VALUE_RAW(center));
                                  ^~~~~~~~~~~~~~~~~~~~~~~
geo.c: In function 'grn_geo_in_rectangle':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2219:34: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                  GRN_GEO_POINT_VALUE_RAW(point),
                                  ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2220:34: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                  GRN_GEO_POINT_VALUE_RAW(top_left),
                                  ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2221:34: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                  GRN_GEO_POINT_VALUE_RAW(bottom_right));
                                  ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
geo.c: In function 'grn_geo_distance_rectangle':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2650:38: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                      GRN_GEO_POINT_VALUE_RAW(point1),
                                      ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2651:38: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                      GRN_GEO_POINT_VALUE_RAW(point2));
                                      ^~~~~~~~~~~~~~~~~~~~~~~
geo.c: In function 'grn_geo_distance_sphere':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2677:37: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                     GRN_GEO_POINT_VALUE_RAW(point1),
                                     ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2678:37: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                     GRN_GEO_POINT_VALUE_RAW(point2));
                                     ^~~~~~~~~~~~~~~~~~~~~~~
geo.c: In function 'grn_geo_distance_ellipsoid':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2705:48: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                                GRN_GEO_POINT_VALUE_RAW(point1),
                                                ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2706:48: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                                GRN_GEO_POINT_VALUE_RAW(point2));
                                                ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2709:48: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                                GRN_GEO_POINT_VALUE_RAW(point1),
                                                ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2710:48: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                                GRN_GEO_POINT_VALUE_RAW(point2));
                                                ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c hash.c  -fPIC -DPIC -o .libs/hash.o
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c: In function 'grn_hash_entry_put_key':
hash.c:1669:8: warning: cast increases required alignment of target type [-Wcast-align]
       *(uint32_t *)entry->plain_entry.key = hash_value;
        ^
hash.c: In function 'get_key':
hash.c:1732:44: warning: cast increases required alignment of target type [-Wcast-align]
   return grn_hash_entry_get_key(ctx, hash, (grn_hash_entry *)n);
                                            ^
hash.c: In function 'get_value':
hash.c:1738:46: warning: cast increases required alignment of target type [-Wcast-align]
   return grn_hash_entry_get_value(ctx, hash, (grn_hash_entry *)n);
                                              ^
hash.c: In function 'put_key':
hash.c:1745:44: warning: cast increases required alignment of target type [-Wcast-align]
   return grn_hash_entry_put_key(ctx, hash, (grn_hash_entry *)n, h, key, len);
                                            ^
hash.c: In function 'match_key':
hash.c:1752:48: warning: cast increases required alignment of target type [-Wcast-align]
   return grn_hash_entry_compare_key(ctx, hash, (grn_hash_entry *)ee,
                                                ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c: In function 'pack':
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c: In function 'part':
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c: In function 'pack_val32':
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3236:10: warning: cast increases required alignment of target type [-Wcast-align]
     : (*((int32_t *)((byte *)((arg->flags & GRN_TABLE_SORT_BY_VALUE)\
          ^
hash.c:3268:3: note: in expansion of macro 'PREPARE_VAL32'
   PREPARE_VAL32(id, c, &cr);
   ^~~~~~~~~~~~~
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3236:10: warning: cast increases required alignment of target type [-Wcast-align]
     : (*((int32_t *)((byte *)((arg->flags & GRN_TABLE_SORT_BY_VALUE)\
          ^
hash.c:3278:5: note: in expansion of macro 'PREPARE_VAL32'
     PREPARE_VAL32(id, e, &er);
     ^~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2900:41: note: in expansion of macro 'GRN_RECORD_VALUE'
             grn_obj_get_value(ctx, col, GRN_RECORD_VALUE(rec), res);
                                         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2910:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2910:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2912:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2912:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2914:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           query = GRN_OBJ_RESOLVE(ctx, query);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2914:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           query = GRN_OBJ_RESOLVE(ctx, query);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2916:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           index = GRN_OBJ_RESOLVE(ctx, index);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2916:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           index = GRN_OBJ_RESOLVE(ctx, index);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2918:40: note: in expansion of macro 'GRN_UINT32_VALUE'
                          (grn_operator)GRN_UINT32_VALUE(op), NULL);
                                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2926:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2926:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2928:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2928:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2930:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2930:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2932:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2932:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1369:3: note: in definition of macro 'WITH_SPSAVE'
   block\
   ^~~~~
expr.c:2934:67: note: in expansion of macro 'GRN_UINT32_VALUE'
             grn_table_select(ctx, table, expr, res, (grn_operator)GRN_UINT32_VALUE(op));
                                                                   ^~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2944:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2944:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2946:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2946:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2948:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           limit = GRN_OBJ_RESOLVE(ctx, limit);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2948:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           limit = GRN_OBJ_RESOLVE(ctx, limit);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2950:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2950:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1369:3: note: in definition of macro 'WITH_SPSAVE'
   block\
   ^~~~~
expr.c:2973:47: note: in expansion of macro 'GRN_INT32_VALUE'
                 grn_table_sort(ctx, table, 0, GRN_INT32_VALUE(limit), res, keys, n_keys);
                                               ^~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2988:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2988:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2990:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2990:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2992:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2992:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3041:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3041:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3043:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           str = GRN_OBJ_RESOLVE(ctx, str);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3043:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           str = GRN_OBJ_RESOLVE(ctx, str);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3045:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3045:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
In file included from ../include/groonga.h:40:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
expr.c:3051:11: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
           GRN_OBJ_FORMAT_FIN(ctx, &format);
           ^~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3240:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3242:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3244:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3246:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3261:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3263:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3265:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3267:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3282:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3284:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3286:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3288:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3307:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3309:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3311:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3313:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3333:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3335:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3337:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3339:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3346:22: note: in expansion of macro 'GRN_INT32_VALUE'
             r = d <= GRN_INT32_VALUE(value);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3349:22: note: in expansion of macro 'GRN_FLOAT_VALUE'
             r = d <= GRN_FLOAT_VALUE(value);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3367:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3369:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3371:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3373:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3375:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3377:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3396:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln0 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3398:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la0 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3400:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln1 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3402:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la1 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3404:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln2 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3406:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la2 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3408:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln3 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3410:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la3 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2182:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2190:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2199:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2207:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2216:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2224:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2232:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2251:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2259:5: note: in definition of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3462:20: note: in expansion of macro 'GRN_INT64_VALUE'
               x_ = GRN_INT64_VALUE(res);
                    ^~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o id.lo id.c
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2028:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2040:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2052:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2064:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1988:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2088:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2090:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2090:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2100:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1988:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2112:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1988:19: note: in expansion of macro 'FLOAT_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2028:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2040:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2052:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2064:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1988:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2088:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c id.c  -fPIC -DPIC -o .libs/id.o
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2090:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2090:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2100:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1988:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2112:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1988:19: note: in expansion of macro 'FLOAT_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2182:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2190:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2199:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2207:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2216:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2224:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2232:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2251:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2259:5: note: in definition of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:1551:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                 \
        ^~~~~~~~~~~~~~~
expr.c:3534:11: note: in expansion of macro 'TEXT_UNARY_ARITHMETIC_OPERATION'
           TEXT_UNARY_ARITHMETIC_OPERATION(~),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ii.lo ii.c
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1535:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3546:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(|),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1539:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3546:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(|),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1535:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3558:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(^),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1539:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3558:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(^),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ii.c  -fPIC -DPIC -o .libs/ii.o
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1535:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3570:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(&),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1539:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3570:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(&),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
ii.c: In function 'buffer_open':
ii.c:2163:19: warning: cast increases required alignment of target type [-Wcast-align]
     if (b) { *b = (buffer *)p; }
                   ^
ii.c:2164:21: warning: cast increases required alignment of target type [-Wcast-align]
     if (bt) { *bt = (buffer_term *)(p + LPOS(pos)); }
                     ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
ii.c: In function 'array_at':
ii.c:2464:10: warning: cast increases required alignment of target type [-Wcast-align]
   return (uint32_t *)(p + (id & ARRAY_MASK_IN_A_SEGMENT) * S_ARRAY_ELEMENT);
          ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1535:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3582:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(<<),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
ii.c: In function 'array_get':
ii.c:2482:10: warning: cast increases required alignment of target type [-Wcast-align]
   return (uint32_t *)(p + (id & ARRAY_MASK_IN_A_SEGMENT) * S_ARRAY_ELEMENT);
          ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1539:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3582:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(<<),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
ii.c: In function 'buffer_new':
ii.c:4168:9: warning: cast increases required alignment of target type [-Wcast-align]
   *br = (buffer_rec *)(((byte *)&b->terms[b->header.nterms]) + b->header.buffer_free);
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
ii.c: In function 'grn_ii_update_one':
ii.c:4579:14: warning: cast increases required alignment of target type [-Wcast-align]
         br = (buffer_rec *)(((byte *)&b->terms[b->header.nterms])
              ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
ii.c:4642:16: warning: cast increases required alignment of target type [-Wcast-align]
           br = (buffer_rec *)(((byte *)br) + size2);
                ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
ii.c: In function 'grn_ii_delete_one':
ii.c:4812:10: warning: cast increases required alignment of target type [-Wcast-align]
     br = (buffer_rec *)(((byte *)&b->terms[b->header.nterms]) + b->header.buffer_free);
          ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from ii.c:17:
ii.c: In function 'grn_ii_column_update':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
ii.c:6241:50: note: in expansion of macro 'GRN_RECORD_VALUE'
           grn_uvector_add_element(ctx, &uvector, GRN_RECORD_VALUE(new_),
                                                  ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
ii.c:6288:11: warning: cast increases required alignment of target type [-Wcast-align]
     tpe = (grn_id *)GRN_BULK_CURR(post);
           ^
ii.c:6289:15: warning: cast increases required alignment of target type [-Wcast-align]
     for (tp = (grn_id *)GRN_BULK_HEAD(post); tp < tpe; tp++) {
               ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from ii.c:17:
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
ii.c:6354:50: note: in expansion of macro 'GRN_RECORD_VALUE'
           grn_uvector_add_element(ctx, &uvector, GRN_RECORD_VALUE(old_),
                                                  ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1535:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3594:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(>>),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1539:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3594:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(>>),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
ii.c: In function 'grn_ii_builder_append_value':
ii.c:11319:16: warning: cast increases required alignment of target type [-Wcast-align]
         tid = *(grn_id *)value;
                ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:3615:18: note: in expansion of macro 'GRN_INT64_VALUE'
             x_ = GRN_INT64_VALUE(res);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:3619:18: note: in expansion of macro 'GRN_INT64_VALUE'
             y_ = GRN_INT64_VALUE(res);
                  ^~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2295:9: note: in expansion of macro 'GRN_PTR_VALUE'
   col = GRN_PTR_VALUE(var);                                             \
         ^~~~~~~~~~~~~
expr.c:3626:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE, 1, GRN_OBJ_INCR);
         ^
expr.c:2296:10: warning: cast increases required alignment of target type [-Wcast-align]
   rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));            \
          ^
expr.c:3626:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE, 1, GRN_OBJ_INCR);
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2295:9: note: in expansion of macro 'GRN_PTR_VALUE'
   col = GRN_PTR_VALUE(var);                                             \
         ^~~~~~~~~~~~~
expr.c:3629:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE, 1, GRN_OBJ_DECR);
         ^
expr.c:2296:10: warning: cast increases required alignment of target type [-Wcast-align]
   rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));            \
          ^
expr.c:3629:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE, 1, GRN_OBJ_DECR);
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2295:9: note: in expansion of macro 'GRN_PTR_VALUE'
   col = GRN_PTR_VALUE(var);                                             \
         ^~~~~~~~~~~~~
expr.c:3632:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE_POST, 1, GRN_OBJ_INCR);
         ^
expr.c:2296:10: warning: cast increases required alignment of target type [-Wcast-align]
   rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));            \
          ^
expr.c:3632:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE_POST, 1, GRN_OBJ_INCR);
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2295:9: note: in expansion of macro 'GRN_PTR_VALUE'
   col = GRN_PTR_VALUE(var);                                             \
         ^~~~~~~~~~~~~
expr.c:3635:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE_POST, 1, GRN_OBJ_DECR);
         ^
expr.c:2296:10: warning: cast increases required alignment of target type [-Wcast-align]
   rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));            \
          ^
expr.c:3635:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE_POST, 1, GRN_OBJ_DECR);
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
expr.c: In function 'scan_info_put_index':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
expr.c:4011:21: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj **pi = &GRN_PTR_VALUE_AT(&si->index, ni);
                     ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1486:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
expr.c:4015:26: note: in expansion of macro 'GRN_INT32_VALUE_AT'
           int32_t *pw = &GRN_INT32_VALUE_AT(&si->wv, (ni - i) * 2);
                          ^~~~~~~~~~~~~~~~~~
expr.c: In function 'get_weight':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4038:14: note: in expansion of macro 'GRN_INT32_VALUE'
       return GRN_INT32_VALUE(ec[1].value);
              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4044:18: note: in expansion of macro 'GRN_INT32_VALUE'
         weight = GRN_INT32_VALUE(&weight_buffer);
                  ^~~~~~~~~~~~~~~
expr.c: In function 'scan_info_build_match_expr_codes_find_index':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4274:18: note: in expansion of macro 'GRN_INT32_VALUE'
           *sid = GRN_INT32_VALUE(ec[1].value) + 1;
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:4276:18: note: in expansion of macro 'GRN_UINT32_VALUE'
           *sid = GRN_UINT32_VALUE(ec[1].value) + 1;
                  ^~~~~~~~~~~~~~~~
expr.c: In function 'scan_info_build_match':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4529:30: note: in expansion of macro 'GRN_INT32_VALUE'
           si->max_interval = GRN_INT32_VALUE(*p);
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4538:38: note: in expansion of macro 'GRN_INT32_VALUE'
           si->similarity_threshold = GRN_INT32_VALUE(*p);
                                      ^~~~~~~~~~~~~~~
expr.c: In function 'grn_scan_info_build_full':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4891:46: note: in expansion of macro 'GRN_INT32_VALUE'
         grn_scan_info_set_start_position(si, GRN_INT32_VALUE(&buffer));
                                              ^~~~~~~~~~~~~~~
expr.c: In function 'exec_result_to_score':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5137:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(score_buffer);
            ^~~~~~~~~~~~~~~
expr.c: In function 'grn_table_select_index_equal':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:5918:25: note: in expansion of macro 'GRN_UINT32_VALUE'
           posting.rid = GRN_UINT32_VALUE(&dest);
                         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:5980:15: note: in expansion of macro 'GRN_RECORD_VALUE'
         tid = GRN_RECORD_VALUE(si->query);
               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
expr.c:5992:15: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
         sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
               ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1486:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
expr.c:5993:18: note: in expansion of macro 'GRN_INT32_VALUE_AT'
         weight = GRN_INT32_VALUE_AT(&(si->wv), 1);
                  ^~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_table_select_index_not_equal':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:6064:16: note: in expansion of macro 'GRN_UINT32_VALUE'
           id = GRN_UINT32_VALUE(&dest);
                ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:6095:15: note: in expansion of macro 'GRN_RECORD_VALUE'
         tid = GRN_RECORD_VALUE(si->query);
               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
expr.c:6111:15: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
         sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
               ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1486:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
expr.c:6112:18: note: in expansion of macro 'GRN_INT32_VALUE_AT'
         weight = GRN_INT32_VALUE_AT(&(si->wv), 1);
                  ^~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_table_select_index_match':
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:6156:23: note: in expansion of macro 'GRN_PTR_VALUE'
   grn_obj wv, **ip = &GRN_PTR_VALUE(&si->index);
                       ^~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:6159:18: note: in expansion of macro 'GRN_INT32_VALUE'
   int32_t *wp = &GRN_INT32_VALUE(&si->wv);
                  ^~~~~~~~~~~~~~~
expr.c:6184:26: warning: cast increases required alignment of target type [-Wcast-align]
   optarg.weight_vector = (int *)GRN_BULK_HEAD(&wv);
                          ^
expr.c:6200:10: warning: cast increases required alignment of target type [-Wcast-align]
         ((int *)GRN_BULK_HEAD(&wv))[weight_index] = weight;
          ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:6204:31: note: in expansion of macro 'GRN_INT32_VALUE'
       optarg.weight_vector = &GRN_INT32_VALUE(&wv);
                               ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
expr.c:6210:21: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     optarg.scorer = GRN_PTR_VALUE_AT(&(si->scorers), j);
                     ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
expr.c:6212:7: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       GRN_PTR_VALUE_AT(&(si->scorer_args_exprs), j);
       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
expr.c:6214:7: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       GRN_UINT32_VALUE_AT(&(si->scorer_args_expr_offsets), j);
       ^~~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_table_select_index_range_key':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
expr.c:6399:13: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
             ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1486:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
expr.c:6400:16: note: in expansion of macro 'GRN_INT32_VALUE_AT'
       weight = GRN_INT32_VALUE_AT(&(si->wv), 1);
                ^~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_table_select_index_range_column':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
expr.c:6491:13: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
             ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1486:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
expr.c:6492:16: note: in expansion of macro 'GRN_INT32_VALUE_AT'
       weight = GRN_INT32_VALUE_AT(&(si->wv), 1);
                ^~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_table_select_index':
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:6654:22: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *index = GRN_PTR_VALUE(&si->index);
                      ^~~~~~~~~~~~~
expr.c: In function 'grn_table_select':
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
expr.c:6885:11: note: in expansion of macro 'GRN_PTR_POP'
           GRN_PTR_POP(&res_stack, res_);
           ^~~~~~~~~~~
expr.c:6931:25: warning: cast increases required alignment of target type [-Wcast-align]
         stacked_res = *((grn_obj **)GRN_BULK_HEAD(&res_stack) + i);
                         ^
expr.c: In function 'grn_ptr_value_at':
expr.c:6962:9: warning: cast increases required alignment of target type [-Wcast-align]
     ? (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
         ^
expr.c: In function 'grn_int32_value_at':
expr.c:6972:9: warning: cast increases required alignment of target type [-Wcast-align]
     ? (((int32_t *)GRN_BULK_HEAD(obj))[offset])
         ^
In file included from expr.c:19:0:
grn_ecmascript.lemon: In function 'yy_reduce':
grn_db.h:410:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(int32_t *)(GRN_BULK_CURR(obj));\
              ^
grn_ecmascript.lemon:67:3: note: in expansion of macro 'GRN_INT32_POP'
   GRN_INT32_POP(&efsi->mode_stack, mode);
   ^~~~~~~~~~~~~
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
grn_ecmascript.lemon:72:3: note: in expansion of macro 'GRN_PTR_POP'
   GRN_PTR_POP(&efsi->column_stack, c);
   ^~~~~~~~~~~
In file included from expr.c:19:0:
grn_db.h:410:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(int32_t *)(GRN_BULK_CURR(obj));\
              ^
grn_ecmascript.lemon:73:3: note: in expansion of macro 'GRN_INT32_POP'
   GRN_INT32_POP(&efsi->mode_stack, mode);
   ^~~~~~~~~~~~~
grn_db.h:410:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(int32_t *)(GRN_BULK_CURR(obj));\
              ^
grn_ecmascript.lemon:79:7: note: in expansion of macro 'GRN_INT32_POP'
       GRN_INT32_POP(&efsi->max_interval_stack, max_interval);
       ^~~~~~~~~~~~~
grn_db.h:410:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(int32_t *)(GRN_BULK_CURR(obj));\
              ^
grn_ecmascript.lemon:85:7: note: in expansion of macro 'GRN_INT32_POP'
       GRN_INT32_POP(&efsi->similarity_threshold_stack, similarity_threshold);
       ^~~~~~~~~~~~~
grn_db.h:410:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(int32_t *)(GRN_BULK_CURR(obj));\
              ^
grn_ecmascript.lemon:207:5: note: in expansion of macro 'GRN_INT32_POP'
     GRN_INT32_POP(&efsi->max_interval_stack, max_interval);
     ^~~~~~~~~~~~~
In file included from expr.c:7191:0:
grn_ecmascript.lemon:512:15: warning: cast increases required alignment of target type [-Wcast-align]
     columns = (grn_obj **)GRN_BULK_HEAD(&columns_buffer);
               ^
expr.c: In function 'accept_query_string':
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
expr.c:7218:3: note: in expansion of macro 'GRN_PTR_POP'
   GRN_PTR_POP(&efsi->token_stack, token);
   ^~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
expr.c: In function 'grn_expr_syntax_expand_term_by_func':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:8323:8: note: in expansion of macro 'GRN_INT32_VALUE'
   rc = GRN_INT32_VALUE(rc_object);
        ^~~~~~~~~~~~~~~
In file included from expr.c:19:0:
expr.c: In function 'grn_expr_get_keywords':
grn_db.h:419:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(uint32_t *)(GRN_BULK_CURR(obj));\
              ^
expr.c:8601:13: note: in expansion of macro 'GRN_UINT32_POP'
             GRN_UINT32_POP(&but_stack, npbut);
             ^~~~~~~~~~~~~~
expr.c: In function 'grn_expr_snip_add_conditions':
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
expr.c:8636:7: note: in expansion of macro 'GRN_PTR_POP'
       GRN_PTR_POP(&keywords, keyword);
       ^~~~~~~~~~~
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
expr.c:8646:7: note: in expansion of macro 'GRN_PTR_POP'
       GRN_PTR_POP(&keywords, keyword);
       ^~~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o index_column.lo index_column.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c index_column.c  -fPIC -DPIC -o .libs/index_column.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o io.lo io.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c io.c  -fPIC -DPIC -o .libs/io.o
io.c: In function 'array_init_':
io.c:379:36: warning: cast increases required alignment of target type [-Wcast-align]
   grn_io_array_spec *array_specs = (grn_io_array_spec *)io->user_header;
                                    ^
io.c:384:15: warning: cast increases required alignment of target type [-Wcast-align]
   io->ainfo = (grn_io_array_info *)mp;
               ^
io.c:394:29: warning: cast increases required alignment of target type [-Wcast-align]
     io->ainfo[i].segments = (uint32_t *)hp;
                             ^
io.c:395:26: warning: cast increases required alignment of target type [-Wcast-align]
     io->ainfo[i].addrs = (void **)mp;
                          ^
io.c: In function 'array_init':
io.c:408:38: warning: cast increases required alignment of target type [-Wcast-align]
     grn_io_array_spec *array_specs = (grn_io_array_spec *)io->user_header;
                                      ^
io.c: In function 'grn_io_expire':
io.c:1289:44: warning: cast increases required alignment of target type [-Wcast-align]
           grn_io_array_spec *array_specs = (grn_io_array_spec *)io->user_header;
                                            ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o logger.lo logger.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c logger.c  -fPIC -DPIC -o .libs/logger.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb.lo mrb.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb.c  -fPIC -DPIC -o .libs/mrb.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o nfkc.lo nfkc.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c nfkc.c  -fPIC -DPIC -o .libs/nfkc.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o nfkc50.lo nfkc50.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c nfkc50.c  -fPIC -DPIC -o .libs/nfkc50.o
ii.c: In function 'buffer_split.isra.62':
ii.c:3804:27: warning: 'dls1' may be used uninitialized in this function [-Wmaybe-uninitialized]
                           array_update(ctx, ii, dls1, db1);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ii.c:3803:27: warning: 'dls0' may be used uninitialized in this function [-Wmaybe-uninitialized]
                           array_update(ctx, ii, dls0, db0);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from ii.c:17:
../include/groonga/groonga.h:1124:5: warning: 'dps1' may be used uninitialized in this function [-Wmaybe-uninitialized]
     grn_logger_put(ctx, (level), __FILE__, __LINE__, __FUNCTION__, __VA_ARGS__); \
     ^~~~~~~~~~~~~~
ii.c:3733:18: note: 'dps1' was declared here
   uint32_t dps0, dps1, dls0, dls1, sps, scn, dcn0 = 0, dcn1 = 0;
                  ^~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from ii.c:17:
../include/groonga/groonga.h:1124:5: warning: 'dps0' may be used uninitialized in this function [-Wmaybe-uninitialized]
     grn_logger_put(ctx, (level), __FILE__, __LINE__, __FUNCTION__, __VA_ARGS__); \
     ^~~~~~~~~~~~~~
ii.c:3733:12: note: 'dps0' was declared here
   uint32_t dps0, dps1, dls0, dls1, sps, scn, dcn0 = 0, dcn1 = 0;
            ^~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o normalizer.lo normalizer.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c normalizer.c  -fPIC -DPIC -o .libs/normalizer.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o obj.lo obj.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c obj.c  -fPIC -DPIC -o .libs/obj.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from obj.c:19:
obj.c: In function 'grn_obj_is_true':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
obj.c:36:14: note: in expansion of macro 'GRN_INT32_VALUE'
       return GRN_INT32_VALUE(obj) != 0;
              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
obj.c:39:14: note: in expansion of macro 'GRN_UINT32_VALUE'
       return GRN_UINT32_VALUE(obj) != 0;
              ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
obj.c:43:21: note: in expansion of macro 'GRN_FLOAT_VALUE'
       float_value = GRN_FLOAT_VALUE(obj);
                     ^~~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o operator.lo operator.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c operator.c  -fPIC -DPIC -o .libs/operator.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
operator.c: In function 'grn_operator_exec_equal':
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:200:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:206:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:212:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:218:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:224:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:227:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:230:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:234:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ == GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:237:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ == GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:240:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:249:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ == GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:264:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:270:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:273:21: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:273:51: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:276:21: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:276:52: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:280:21: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:280:51: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:283:21: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:283:52: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:286:21: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:286:51: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
operator.c: In function 'grn_operator_exec_not_equal':
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:200:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:206:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:212:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:218:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:224:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:227:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:230:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:234:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ == GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:237:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ == GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:240:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:249:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ == GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:264:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:270:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:273:21: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:273:51: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:276:21: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:276:52: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:280:21: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:280:51: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:283:21: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:283:52: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:286:21: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:286:51: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
operator.c: In function 'grn_operator_exec_less':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
operator.c: In function 'grn_operator_exec_greater':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
expr.c: In function 'grn_expr_exec':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
expr.c:3697:1: warning: const/copy propagation disabled: 24502 basic blocks and 109112 registers; increase --param max-gcse-memory above 334207280 [-Wdisabled-optimization]
 }
 ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
expr.c:3697:1: warning: PRE disabled: 24502 basic blocks and 109112 registers; increase --param max-gcse-memory above 334207280 [-Wdisabled-optimization]
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
expr.c:3697:1: warning: const/copy propagation disabled: 24502 basic blocks and 109112 registers; increase --param max-gcse-memory above 334207280 [-Wdisabled-optimization]
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
operator.c: In function 'grn_operator_exec_less_equal':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
operator.c: In function 'grn_operator_exec_greater_equal':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
operator.c: In function 'exec_text_operator_record_text':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:1031:50: note: in expansion of macro 'GRN_RECORD_VALUE'
   record_key_len = grn_table_get_key(ctx, table, GRN_RECORD_VALUE(record),
                                                  ^~~~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o output.lo output.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c output.c  -fPIC -DPIC -o .libs/output.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from output.c:18:
output.c: In function 'put_delimiter':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:29:30: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define CURR_LEVEL (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1))) : 0)
                              ^~~~~~~~~~~~~~~~~~~
output.c:126:20: note: in expansion of macro 'CURR_LEVEL'
   uint32_t level = CURR_LEVEL;
                    ^~~~~~~~~~
output.c: In function 'grn_output_array_close':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:29:30: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define CURR_LEVEL (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1))) : 0)
                              ^~~~~~~~~~~~~~~~~~~
output.c:220:11: note: in expansion of macro 'CURR_LEVEL'
       if (CURR_LEVEL >= 2) { GRN_TEXT_PUTC(ctx, outbuf, '\t'); }
           ^~~~~~~~~~
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:245:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_map_close':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:29:30: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define CURR_LEVEL (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1))) : 0)
                              ^~~~~~~~~~~~~~~~~~~
output.c:300:11: note: in expansion of macro 'CURR_LEVEL'
       if (CURR_LEVEL >= 2) { GRN_TEXT_PUTC(ctx, outbuf, '\t'); }
           ^~~~~~~~~~
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:325:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_int32':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:355:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_int64':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:385:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_uint64':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:415:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_float':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:445:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_str':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:477:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_bool':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:518:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_null':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:544:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_bulk_void':
output.c:551:39: warning: cast increases required alignment of target type [-Wcast-align]
   if (value_len == sizeof(grn_id) && *(grn_id *)value == GRN_ID_NIL) {
                                       ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from output.c:18:
output.c: In function 'grn_output_time':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:587:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_geo_point':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:659:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_text_atoj':
output.c:690:13: warning: cast increases required alignment of target type [-Wcast-align]
             (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
             ^
output.c:704:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                  ^
output.c:711:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                  ^
output.c:720:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                  ^
output.c:729:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                  ^
output.c:738:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                  ^
output.c:750:19: warning: cast increases required alignment of target type [-Wcast-align]
             idp = (grn_id *)GRN_BULK_HEAD(&buf);
                   ^
output.c:778:18: warning: cast increases required alignment of target type [-Wcast-align]
           id = *((grn_id *)GRN_BULK_HEAD(&buf));
                  ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from output.c:18:
output.c: In function 'grn_output_bulk':
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
output.c:862:45: note: in expansion of macro 'GRN_INT16_VALUE'
                      GRN_BULK_VSIZE(bulk) ? GRN_INT16_VALUE(bulk) : 0);
                                             ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
output.c:866:45: note: in expansion of macro 'GRN_UINT16_VALUE'
                      GRN_BULK_VSIZE(bulk) ? GRN_UINT16_VALUE(bulk) : 0);
                                             ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
output.c:870:45: note: in expansion of macro 'GRN_INT32_VALUE'
                      GRN_BULK_VSIZE(bulk) ? GRN_INT32_VALUE(bulk) : 0);
                                             ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
output.c:874:45: note: in expansion of macro 'GRN_UINT32_VALUE'
                      GRN_BULK_VSIZE(bulk) ? GRN_UINT32_VALUE(bulk) : 0);
                                             ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
output.c:878:45: note: in expansion of macro 'GRN_INT64_VALUE'
                      GRN_BULK_VSIZE(bulk) ? GRN_INT64_VALUE(bulk) : 0);
                                             ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
output.c:882:46: note: in expansion of macro 'GRN_UINT64_VALUE'
                       GRN_BULK_VSIZE(bulk) ? GRN_UINT64_VALUE(bulk) : 0);
                                              ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
output.c:886:45: note: in expansion of macro 'GRN_FLOAT_VALUE'
                      GRN_BULK_VSIZE(bulk) ? GRN_FLOAT_VALUE(bulk) : 0);
                                             ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
output.c:890:44: note: in expansion of macro 'GRN_INT64_VALUE'
                     GRN_BULK_VSIZE(bulk) ? GRN_INT64_VALUE(bulk) : 0);
                                            ^~~~~~~~~~~~~~~
output.c:895:49: warning: cast increases required alignment of target type [-Wcast-align]
                          GRN_BULK_VSIZE(bulk) ? (grn_geo_point *)GRN_BULK_HEAD(bulk) : NULL);
                                                 ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from output.c:18:
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
output.c:901:19: note: in expansion of macro 'GRN_RECORD_VALUE'
       grn_id id = GRN_RECORD_VALUE(bulk);
                   ^~~~~~~~~~~~~~~~
output.c:902:27: warning: cast increases required alignment of target type [-Wcast-align]
       grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
                           ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from output.c:18:
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
output.c:938:19: note: in expansion of macro 'GRN_RECORD_VALUE'
       grn_id id = GRN_RECORD_VALUE(bulk);
                   ^~~~~~~~~~~~~~~~
output.c: In function 'grn_output_uvector_result_set':
output.c:978:13: warning: cast increases required alignment of target type [-Wcast-align]
   columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
             ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from output.c:18:
output.c: In function 'grn_output_pvector':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
output.c:1221:15: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       value = GRN_PTR_VALUE_AT(pvector, i);
               ^~~~~~~~~~~~~~~~
output.c: In function 'grn_output_table_columns_by_columns':
output.c:1532:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
                       ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from output.c:18:
output.c: In function 'grn_output_table_record_by_expression':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
output.c:1609:39: note: in expansion of macro 'GRN_RECORD_VALUE'
                                       GRN_RECORD_VALUE(record));
                                       ^~~~~~~~~~~~~~~~
output.c: In function 'grn_output_table_records_by_columns':
output.c:1701:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
                       ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o pat.lo pat.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c pat.c  -fPIC -DPIC -o .libs/pat.o
In file included from pat.c:17:0:
pat.c: In function 'grn_pat_get_key':
grn.h:698:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
pat.c:931:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((keybuf), (key), (size));\
     ^~~~~~~~
pat.c:1877:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, keybuf, key, len);
       ^~~~~~~
pat.c: In function 'grn_pat_get_key2':
grn.h:697:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
pat.c:931:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((keybuf), (key), (size));\
     ^~~~~~~~
pat.c:1906:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, curr, key, len);
       ^~~~~~~
grn.h:698:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
pat.c:931:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((keybuf), (key), (size));\
     ^~~~~~~~
pat.c:1906:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, curr, key, len);
       ^~~~~~~
pat.c:940:9: warning: cast increases required alignment of target type [-Wcast-align]
       *((int64_t *)(keybuf)) = v ^ (((v^(1LL<<63))>> 63)|(1LL<<63));  \
         ^
pat.c:1906:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, curr, key, len);
       ^~~~~~~
pat.c: In function 'grn_pat_set_value':
pat.c:1981:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int32_t *)v) += *((int32_t *)value);
               ^
pat.c:1984:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int64_t *)v) += *((int64_t *)value);
               ^
pat.c:1993:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int32_t *)v) -= *((int32_t *)value);
               ^
pat.c:1996:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int64_t *)v) -= *((int64_t *)value);
               ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o plugin.lo plugin.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c plugin.c  -fPIC -DPIC -o .libs/plugin.o
plugin.c: In function 'grn_plugin_ensure_registered':
plugin.c:909:18: warning: cast increases required alignment of target type [-Wcast-align]
       plugin = *((grn_plugin **)value);
                  ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc.lo proc.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o report.lo report.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc.c  -fPIC -DPIC -o .libs/proc.o
In file included from proc.c:24:0:
proc.c: In function 'proc_load':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
grn_output.h:103:31: note: in definition of macro 'GRN_OUTPUT_UINT64'
   (grn_ctx_output_uint64(ctx, value))
                               ^~~~~
proc.c:172:29: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
           GRN_OUTPUT_UINT64(GRN_UINT32_VALUE_AT(ids, i));
                             ^~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_proc.h:21,
                 from proc.c:19:
proc.c: In function 'list_proc':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc.c:1145:16: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         proc = GRN_PTR_VALUE_AT(&target_procs, i);
                ^~~~~~~~~~~~~~~~
proc.c: In function 'func_rand':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1181:15: note: in expansion of macro 'GRN_INT32_VALUE'
     int max = GRN_INT32_VALUE(args[0]);
               ^~~~~~~~~~~~~~~
proc.c: In function 'is_negative_value':
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1280:12: note: in expansion of macro 'GRN_INT16_VALUE'
     return GRN_INT16_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1282:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1284:12: note: in expansion of macro 'GRN_INT64_VALUE'
     return GRN_INT64_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1286:12: note: in expansion of macro 'GRN_TIME_VALUE'
     return GRN_TIME_VALUE(number) < 0;
            ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1288:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
     return GRN_FLOAT_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
proc.c: In function 'compare_number':
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1356:24: note: in expansion of macro 'GRN_INT16_VALUE'
                        GRN_INT16_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1357:24: note: in expansion of macro 'GRN_INT16_VALUE'
                        GRN_INT16_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1360:24: note: in expansion of macro 'GRN_UINT16_VALUE'
                        GRN_UINT16_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1361:24: note: in expansion of macro 'GRN_UINT16_VALUE'
                        GRN_UINT16_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1364:24: note: in expansion of macro 'GRN_INT32_VALUE'
                        GRN_INT32_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1365:24: note: in expansion of macro 'GRN_INT32_VALUE'
                        GRN_INT32_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1368:24: note: in expansion of macro 'GRN_UINT32_VALUE'
                        GRN_UINT32_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1369:24: note: in expansion of macro 'GRN_UINT32_VALUE'
                        GRN_UINT32_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1372:24: note: in expansion of macro 'GRN_INT64_VALUE'
                        GRN_INT64_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1373:24: note: in expansion of macro 'GRN_INT64_VALUE'
                        GRN_INT64_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1376:24: note: in expansion of macro 'GRN_UINT64_VALUE'
                        GRN_UINT64_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1377:24: note: in expansion of macro 'GRN_UINT64_VALUE'
                        GRN_UINT64_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1380:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
                        GRN_FLOAT_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1381:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
                        GRN_FLOAT_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1384:24: note: in expansion of macro 'GRN_TIME_VALUE'
                        GRN_TIME_VALUE(number1),
                        ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1385:24: note: in expansion of macro 'GRN_TIME_VALUE'
                        GRN_TIME_VALUE(number2));
                        ^~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_proc.h:21,
                 from proc.c:19:
proc.c: In function 'selector_to_function_data_init':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1671:14: note: in expansion of macro 'GRN_RECORD_VALUE'
     pi.rid = GRN_RECORD_VALUE(variable);
              ^~~~~~~~~~~~~~~~
proc.c: In function 'func_between':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1379:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
proc.c:2402:41: note: in expansion of macro 'GRN_RECORD_VALUE'
   GRN_RECORD_SET(ctx, between_variable, GRN_RECORD_VALUE(variable));
                                         ^~~~~~~~~~~~~~~~
proc.c: In function 'selector_between_sequential_search_should_use':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:2530:9: note: in expansion of macro 'GRN_TIME_VALUE'
         GRN_TIME_VALUE(data->max) - GRN_TIME_VALUE(data->min);
         ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:2530:37: note: in expansion of macro 'GRN_TIME_VALUE'
         GRN_TIME_VALUE(data->max) - GRN_TIME_VALUE(data->min);
                                     ^~~~~~~~~~~~~~
proc.c: In function 'selector_in_values_find_source':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc.c:2812:17: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
     source_id = GRN_UINT32_VALUE_AT(&source_ids, 0);
                 ^~~~~~~~~~~~~~~~~~~
proc.c: In function 'selector_in_values_sequential_search':
../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc.c:2895:25: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
       grn_id value_id = GRN_RECORD_VALUE_AT(&value_ids, i);
                         ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc.c:2937:31: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
             grn_id value_id = GRN_RECORD_VALUE_AT(&value_ids, i);
                               ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:2938:29: note: in expansion of macro 'GRN_RECORD_VALUE'
             if (value_id == GRN_RECORD_VALUE(&record_value)) {
                             ^~~~~~~~~~~~~~~~
proc.c: In function 'proc_range_filter':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:3085:21: note: in expansion of macro 'GRN_INT32_VALUE'
       real_offset = GRN_INT32_VALUE(&int32_value);
                     ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:3100:20: note: in expansion of macro 'GRN_INT32_VALUE'
       real_limit = GRN_INT32_VALUE(&int32_value);
                    ^~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c report.c  -fPIC -DPIC -o .libs/report.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o request_canceler.lo request_canceler.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c request_canceler.c  -fPIC -DPIC -o .libs/request_canceler.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o request_timer.lo request_timer.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c request_timer.c  -fPIC -DPIC -o .libs/request_timer.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o rset.lo rset.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c rset.c  -fPIC -DPIC -o .libs/rset.o
rset.c: In function 'grn_rset_recinfo_update_calc_values':
rset.c:70:29: warning: cast increases required alignment of target type [-Wcast-align]
     int64_t current_max = *((int64_t *)values);
                             ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_db.h:21,
                 from rset.c:17:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
rset.c:71:25: note: in expansion of macro 'GRN_INT64_VALUE'
     int64_t value_raw = GRN_INT64_VALUE(&value_int64);
                         ^~~~~~~~~~~~~~~
rset.c:73:9: warning: cast increases required alignment of target type [-Wcast-align]
       *((int64_t *)values) = value_raw;
         ^
rset.c:78:29: warning: cast increases required alignment of target type [-Wcast-align]
     int64_t current_min = *((int64_t *)values);
                             ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_db.h:21,
                 from rset.c:17:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
rset.c:79:25: note: in expansion of macro 'GRN_INT64_VALUE'
     int64_t value_raw = GRN_INT64_VALUE(&value_int64);
                         ^~~~~~~~~~~~~~~
rset.c:81:9: warning: cast increases required alignment of target type [-Wcast-align]
       *((int64_t *)values) = value_raw;
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_db.h:21,
                 from rset.c:17:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
rset.c:86:25: note: in expansion of macro 'GRN_INT64_VALUE'
     int64_t value_raw = GRN_INT64_VALUE(&value_int64);
                         ^~~~~~~~~~~~~~~
rset.c:87:7: warning: cast increases required alignment of target type [-Wcast-align]
     *((int64_t *)values) += value_raw;
       ^
rset.c:91:32: warning: cast increases required alignment of target type [-Wcast-align]
     double current_average = *((double *)values);
                                ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_db.h:21,
                 from rset.c:17:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
rset.c:92:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
     double value_raw = GRN_FLOAT_VALUE(&value_float);
                        ^~~~~~~~~~~~~~~
rset.c:93:7: warning: cast increases required alignment of target type [-Wcast-align]
     *((double *)values) += (value_raw - current_average) / ri->n_subrecs;
       ^
rset.c: In function 'grn_rset_recinfo_get_max_':
rset.c:118:10: warning: cast increases required alignment of target type [-Wcast-align]
   return (int64_t *)values;
          ^
rset.c: In function 'grn_rset_recinfo_get_min_':
rset.c:173:10: warning: cast increases required alignment of target type [-Wcast-align]
   return (int64_t *)values;
          ^
rset.c: In function 'grn_rset_recinfo_get_sum_':
rset.c:231:10: warning: cast increases required alignment of target type [-Wcast-align]
   return (int64_t *)values;
          ^
rset.c: In function 'grn_rset_recinfo_get_avg_':
rset.c:292:10: warning: cast increases required alignment of target type [-Wcast-align]
   return (double *)values;
          ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o scanner.lo scanner.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c scanner.c  -fPIC -DPIC -o .libs/scanner.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o scorer.lo scorer.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c scorer.c  -fPIC -DPIC -o .libs/scorer.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o scorers.lo scorers.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c scorers.c  -fPIC -DPIC -o .libs/scorers.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_db.h:21,
                 from scorers.c:19:
scorers.c: In function 'scorer_tf_at_most':
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
scorers.c:74:11: note: in expansion of macro 'GRN_FLOAT_VALUE'
     max = GRN_FLOAT_VALUE(max_raw);
           ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
scorers.c:82:13: note: in expansion of macro 'GRN_FLOAT_VALUE'
       max = GRN_FLOAT_VALUE(&casted_max_raw);
             ^~~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o snip.lo snip.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c snip.c  -fPIC -DPIC -o .libs/snip.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o store.lo store.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o str.lo str.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c store.c  -fPIC -DPIC -o .libs/store.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c str.c  -fPIC -DPIC -o .libs/str.o
store.c: In function 'grn_ja_free':
store.c:618:6: warning: cast increases required alignment of target type [-Wcast-align]
     *(uint32_t *)(addr + pos - sizeof(grn_id)) = DELETED|aligned_size;
      ^
store.c: In function 'grn_ja_replace':
store.c:713:24: warning: cast increases required alignment of target type [-Wcast-align]
   if (cas && *cas != *((uint64_t *)&eback)) {
                        ^
store.c:721:26: warning: cast increases required alignment of target type [-Wcast-align]
     uint64_t *location = (uint64_t *)(einfo + pos);
                          ^
store.c:722:24: warning: cast increases required alignment of target type [-Wcast-align]
     uint64_t value = *((uint64_t *)ei);
                        ^
store.c: In function 'grn_ja_alloc':
store.c:800:8: warning: cast increases required alignment of target type [-Wcast-align]
       *(grn_id *)(addr + pos) = id;
        ^
store.c:803:10: warning: cast increases required alignment of target type [-Wcast-align]
         *(grn_id *)(addr + pos + aligned_size) = GRN_ID_NIL;
          ^
store.c: In function 'grn_ja_put_raw':
store.c:953:30: warning: cast increases required alignment of target type [-Wcast-align]
             uint32_t pos = *((uint32_t *)(b + el));
                              ^
store.c:959:17: warning: cast increases required alignment of target type [-Wcast-align]
               *((uint32_t *)(b + el)) = value_len - rest;
                 ^
store.c:962:17: warning: cast increases required alignment of target type [-Wcast-align]
               *((uint32_t *)(b + el)) = pos + value_len;
                 ^
store.c:1003:30: warning: cast increases required alignment of target type [-Wcast-align]
             uint32_t pos = *((uint32_t *)(b + el));
                              ^
store.c:1009:17: warning: cast increases required alignment of target type [-Wcast-align]
               *((uint32_t *)(b + el)) = el - rest;
                 ^
store.c:1012:17: warning: cast increases required alignment of target type [-Wcast-align]
               *((uint32_t *)(b + el)) = pos - value_len;
                 ^
store.c: In function 'grn_ja_element_info':
store.c:1181:16: warning: cast increases required alignment of target type [-Wcast-align]
       *cas = *((uint64_t *)&einfo[id & JA_M_EINFO_IN_A_SEGMENT]);
                ^
store.c: In function 'grn_ja_put_packed':
store.c:1260:5: warning: cast increases required alignment of target type [-Wcast-align]
   *((uint64_t *)packed_value) = packed_value_meta;
     ^
store.c:1261:11: warning: cast increases required alignment of target type [-Wcast-align]
   memcpy(((uint64_t *)packed_value) + 1,
           ^
store.c: In function 'grn_ja_get_value':
store.c:1574:24: warning: cast increases required alignment of target type [-Wcast-align]
       uint32_t pos = *((uint32_t *)(b + el));
                        ^
store.c: In function 'grn_ja_defrag_seg':
store.c:1852:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id id = *((grn_id *)v);
                   ^
store.c: In function 'grn_ja_check':
store.c:1943:27: warning: cast increases required alignment of target type [-Wcast-align]
             grn_id id = *((grn_id *)v);
                           ^
str.c: In function 'grn_text_atoj':
str.c:2630:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                  ^
str.c:2638:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                  ^
str.c:2648:19: warning: cast increases required alignment of target type [-Wcast-align]
             idp = (grn_id *)GRN_BULK_HEAD(&buf);
                   ^
str.c:2675:16: warning: cast increases required alignment of target type [-Wcast-align]
         id = *((grn_id *)GRN_BULK_HEAD(&buf));
                ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from str.c:17:
str.c: In function 'grn_text_otoj':
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
str.c:2739:54: note: in expansion of macro 'GRN_INT16_VALUE'
       grn_text_itoa(ctx, bulk, GRN_BULK_VSIZE(obj) ? GRN_INT16_VALUE(obj) : 0);
                                                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2742:55: note: in expansion of macro 'GRN_UINT16_VALUE'
       grn_text_lltoa(ctx, bulk, GRN_BULK_VSIZE(obj) ? GRN_UINT16_VALUE(obj) : 0);
                                                       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
str.c:2745:54: note: in expansion of macro 'GRN_INT32_VALUE'
       grn_text_itoa(ctx, bulk, GRN_BULK_VSIZE(obj) ? GRN_INT32_VALUE(obj) : 0);
                                                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2748:55: note: in expansion of macro 'GRN_UINT32_VALUE'
       grn_text_lltoa(ctx, bulk, GRN_BULK_VSIZE(obj) ? GRN_UINT32_VALUE(obj) : 0);
                                                       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
str.c:2751:55: note: in expansion of macro 'GRN_INT64_VALUE'
       grn_text_lltoa(ctx, bulk, GRN_BULK_VSIZE(obj) ? GRN_INT64_VALUE(obj) : 0);
                                                       ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2754:56: note: in expansion of macro 'GRN_UINT64_VALUE'
       grn_text_ulltoa(ctx, bulk, GRN_BULK_VSIZE(obj) ? GRN_UINT64_VALUE(obj) : 0);
                                                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
str.c:2757:54: note: in expansion of macro 'GRN_FLOAT_VALUE'
       grn_text_ftoa(ctx, bulk, GRN_BULK_VSIZE(obj) ? GRN_FLOAT_VALUE(obj) : 0);
                                                      ^~~~~~~~~~~~~~~
str.c:2761:23: warning: cast increases required alignment of target type [-Wcast-align]
         double dv = *((int64_t *)GRN_BULK_HEAD(obj));
                       ^
str.c:2769:29: warning: cast increases required alignment of target type [-Wcast-align]
         grn_geo_point *gp = (grn_geo_point *)GRN_BULK_HEAD(obj);
                             ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from str.c:17:
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2783:21: note: in expansion of macro 'GRN_RECORD_VALUE'
         grn_id id = GRN_RECORD_VALUE(obj);
                     ^~~~~~~~~~~~~~~~
str.c:2784:29: warning: cast increases required alignment of target type [-Wcast-align]
         grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
                             ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from str.c:17:
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2826:23: note: in expansion of macro 'GRN_RECORD_VALUE'
           grn_id id = GRN_RECORD_VALUE(obj);
                       ^~~~~~~~~~~~~~~~
str.c:2849:19: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *v = (grn_id *)GRN_BULK_HEAD(obj), *ve = (grn_id *)GRN_BULK_CURR(obj);
                   ^
str.c:2849:55: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *v = (grn_id *)GRN_BULK_HEAD(obj), *ve = (grn_id *)GRN_BULK_CURR(obj);
                                                       ^
str.c:2851:27: warning: cast increases required alignment of target type [-Wcast-align]
       grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
                           ^
str.c:2928:21: warning: cast increases required alignment of target type [-Wcast-align]
         grn_id *v = (grn_id *)GRN_BULK_HEAD(obj),
                     ^
str.c:2929:22: warning: cast increases required alignment of target type [-Wcast-align]
                *ve = (grn_id *)GRN_BULK_CURR(obj);
                      ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from str.c:17:
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
str.c:3010:17: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         value = GRN_PTR_VALUE_AT(obj, i);
                 ^~~~~~~~~~~~~~~~
str.c:3022:27: warning: cast increases required alignment of target type [-Wcast-align]
       grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
                           ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o string.lo string.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c string.c  -fPIC -DPIC -o .libs/string.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o thread.lo thread.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c thread.c  -fPIC -DPIC -o .libs/thread.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o time.lo time.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c time.c  -fPIC -DPIC -o .libs/time.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o token_cursor.lo token_cursor.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o tokenizer.lo tokenizer.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c token_cursor.c  -fPIC -DPIC -o .libs/token_cursor.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_ctx.h:21,
                 from grn_token_cursor.h:21,
                 from token_cursor.c:18:
token_cursor.c: In function 'grn_token_cursor_open_initialize_token_filters':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
token_cursor.c:48:36: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *token_filter_object = GRN_PTR_VALUE_AT(token_filters, i);
                                    ^~~~~~~~~~~~~~~~
token_cursor.c: In function 'grn_token_cursor_next_apply_token_filters':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
token_cursor.c:157:26: note: in expansion of macro 'GRN_INT32_VALUE'
   current_token.status = GRN_INT32_VALUE(status);
                          ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
token_cursor.c:165:36: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *token_filter_object = GRN_PTR_VALUE_AT(token_filters, i);
                                    ^~~~~~~~~~~~~~~~
token_cursor.c: In function 'grn_token_cursor_next':
token_cursor.c:301:19: warning: cast increases required alignment of target type [-Wcast-align]
           tid = *((grn_id *)token_cursor->curr);
                   ^
token_cursor.c:320:19: warning: cast increases required alignment of target type [-Wcast-align]
           tid = *((grn_id *)token_cursor->curr);
                   ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_ctx.h:21,
                 from grn_token_cursor.h:21,
                 from token_cursor.c:18:
token_cursor.c: In function 'grn_token_cursor_close_token_filters':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
token_cursor.c:355:36: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *token_filter_object = GRN_PTR_VALUE_AT(token_filters, i);
                                    ^~~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c tokenizer.c  -fPIC -DPIC -o .libs/tokenizer.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from tokenizer.c:18:
tokenizer.c: In function 'grn_tokenizer_query_open':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
tokenizer.c:124:22: note: in expansion of macro 'GRN_UINT32_VALUE'
       query->flags = GRN_UINT32_VALUE(flags);
                      ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
tokenizer.c:129:30: note: in expansion of macro 'GRN_UINT32_VALUE'
       query->tokenize_mode = GRN_UINT32_VALUE(tokenize_mode);
                              ^~~~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o tokenizers.lo tokenizers.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o token_filter.lo token_filter.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c tokenizers.c  -fPIC -DPIC -o .libs/tokenizers.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c token_filter.c  -fPIC -DPIC -o .libs/token_filter.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o util.lo util.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o windows.lo windows.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c util.c  -fPIC -DPIC -o .libs/util.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_db.h:21,
                 from util.c:19:
util.c: In function 'grn_ptr_inspect':
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
util.c:394:24: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *content = GRN_PTR_VALUE(ptr);
                        ^~~~~~~~~~~~~
util.c: In function 'grn_pvector_inspect':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
util.c:415:24: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *element = GRN_PTR_VALUE_AT(pvector, i);
                        ^~~~~~~~~~~~~~~~
util.c: In function 'grn_ii_inspect':
util.c:709:16: warning: cast increases required alignment of target type [-Wcast-align]
   source_ids = (grn_id *)GRN_BULK_HEAD(&sources);
                ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_db.h:21,
                 from util.c:19:
util.c: In function 'grn_time_inspect':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
util.c:1070:14: note: in expansion of macro 'GRN_TIME_VALUE'
   time_raw = GRN_TIME_VALUE(obj);
              ^~~~~~~~~~~~~~
util.c: In function 'grn_geo_point_inspect':
../include/groonga/groonga.h:1476:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
util.c:1100:3: note: in expansion of macro 'GRN_GEO_POINT_VALUE'
   GRN_GEO_POINT_VALUE(obj, latitude, longitude);
   ^~~~~~~~~~~~~~~~~~~
util.c: In function 'grn_json_load_open_bracket_inspect':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:1145:7: note: in expansion of macro 'GRN_UINT32_VALUE'
   n = GRN_UINT32_VALUE(obj);
       ^~~~~~~~~~~~~~~~
util.c: In function 'grn_json_load_open_brace_inspect':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:1166:7: note: in expansion of macro 'GRN_UINT32_VALUE'
   n = GRN_UINT32_VALUE(obj);
       ^~~~~~~~~~~~~~~~
util.c: In function 'grn_record_inspect':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:1209:8: note: in expansion of macro 'GRN_RECORD_VALUE'
   id = GRN_RECORD_VALUE(obj);
        ^~~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c windows.c  -fPIC -DPIC -o .libs/windows.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o windows_event_logger.lo windows_event_logger.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o file_reader.lo file_reader.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c windows_event_logger.c  -fPIC -DPIC -o .libs/windows_event_logger.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o window_function.lo window_function.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c file_reader.c  -fPIC -DPIC -o .libs/file_reader.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o window_functions.lo window_functions.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c window_function.c  -fPIC -DPIC -o .libs/window_function.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_ctx.h:21,
                 from window_function.c:19:
window_function.c: In function 'grn_window_next':
../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
window_function.c:73:13: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
   next_id = GRN_RECORD_VALUE_AT(&(window->ids), window->current_index);
             ^~~~~~~~~~~~~~~~~~~
window_function.c: In function 'grn_expr_call_window_function':
window_function.c:296:40: warning: cast increases required alignment of target type [-Wcast-align]
                                        (grn_obj *)GRN_BULK_HEAD(&args),
                                        ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c window_functions.c  -fPIC -DPIC -o .libs/window_functions.o
expr.c:3697:1: warning: const/copy propagation disabled: 24488 basic blocks and 113039 registers; increase --param max-gcse-memory above 346064416 [-Wdisabled-optimization]
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -version-info 0:0:0 -no-undefined  -Wl,-z,relro -Wl,-z,now -o libgroonga.la -rpath /usr/lib/arm-linux-gnueabihf alloc.lo cache.lo column.lo com.lo command.lo config.lo ctx.lo ctx_impl_mrb.lo dat.lo db.lo dump.lo ts.lo type.lo error.lo expr.lo expr_code.lo geo.lo hash.lo id.lo ii.lo index_column.lo io.lo logger.lo mrb.lo nfkc.lo nfkc50.lo normalizer.lo obj.lo operator.lo output.lo pat.lo plugin.lo proc.lo report.lo request_canceler.lo request_timer.lo rset.lo scanner.lo scorer.lo scorers.lo snip.lo store.lo str.lo string.lo thread.lo time.lo token_cursor.lo tokenizer.lo tokenizers.lo token_filter.lo util.lo windows.lo windows_event_logger.lo file_reader.lo window_function.lo window_functions.lo  dat/libgrndat.la mrb/libgrnmrb.la proc/libgrnproc.la ts/libgrnts.la -lmsgpackc ../vendor/mruby/libmruby.la ../vendor/onigmo-source/libonigmo.la -llz4 -lzstd -latomic -lz -ldl -lpthread -lm  
libtool: link: g++  -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crti.o /usr/lib/gcc/arm-linux-gnueabihf/6/crtbeginS.o  .libs/alloc.o .libs/cache.o .libs/column.o .libs/com.o .libs/command.o .libs/config.o .libs/ctx.o .libs/ctx_impl_mrb.o .libs/dat.o .libs/db.o .libs/dump.o .libs/ts.o .libs/type.o .libs/error.o .libs/expr.o .libs/expr_code.o .libs/geo.o .libs/hash.o .libs/id.o .libs/ii.o .libs/index_column.o .libs/io.o .libs/logger.o .libs/mrb.o .libs/nfkc.o .libs/nfkc50.o .libs/normalizer.o .libs/obj.o .libs/operator.o .libs/output.o .libs/pat.o .libs/plugin.o .libs/proc.o .libs/report.o .libs/request_canceler.o .libs/request_timer.o .libs/rset.o .libs/scanner.o .libs/scorer.o .libs/scorers.o .libs/snip.o .libs/store.o .libs/str.o .libs/string.o .libs/thread.o .libs/time.o .libs/token_cursor.o .libs/tokenizer.o .libs/tokenizers.o .libs/token_filter.o .libs/util.o .libs/windows.o .libs/windows_event_logger.o .libs/file_reader.o .libs/window_function.o .libs/window_functions.o  -Wl,--whole-archive dat/.libs/libgrndat.a mrb/.libs/libgrnmrb.a proc/.libs/libgrnproc.a ts/.libs/libgrnts.a ../vendor/mruby/.libs/libmruby.a -Wl,--no-whole-archive  -lmsgpackc ../vendor/onigmo-source/.libs/libonigmo.a -llz4 -lzstd -latomic -lz -ldl -lpthread -L/usr/lib/gcc/arm-linux-gnueabihf/6 -L/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf -L/usr/lib/gcc/arm-linux-gnueabihf/6/../../.. -L/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/arm-linux-gnueabihf/6/crtendS.o /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crtn.o  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,libgroonga.so.0 -o .libs/libgroonga.so.0.0.0
libtool: link: (cd ".libs" && rm -f "libgroonga.so.0" && ln -s "libgroonga.so.0.0.0" "libgroonga.so.0")
libtool: link: (cd ".libs" && rm -f "libgroonga.so" && ln -s "libgroonga.so.0.0.0" "libgroonga.so")
libtool: link: ( cd ".libs" && rm -f "libgroonga.la" && ln -s "../libgroonga.la" "libgroonga.la" )
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/lib'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/lib'
Making all in plugins
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins'
Making all in tokenizers
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/tokenizers'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -I/usr/include -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mecab_la-mecab.lo `test -f 'mecab.c' || echo './'`mecab.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -I/usr/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mecab.c  -fPIC -DPIC -o .libs/mecab_la-mecab.o
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -L/usr/lib/arm-linux-gnueabihf -Wl,-z,relro -Wl,-z,now -o mecab.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers mecab_la-mecab.lo ../../lib/libgroonga.la -lmecab  ../../lib/libgroonga.la
libtool: link: gcc -shared  -fPIC -DPIC  .libs/mecab_la-mecab.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs -L/usr/lib/arm-linux-gnueabihf -lmecab ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,mecab.so -o .libs/mecab.so
libtool: link: ( cd ".libs" && rm -f "mecab.la" && ln -s "../mecab.la" "mecab.la" )
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/tokenizers'
Making all in suggest
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/suggest'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2  -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o suggest.lo suggest.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c suggest.c  -fPIC -DPIC -o .libs/suggest.o
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_ctx.h:21,
                 from suggest.c:24:
suggest.c: In function 'cooccurrence_search':
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:180:19: note: in expansion of macro 'GRN_RECORD_VALUE'
         post_id = GRN_RECORD_VALUE(&post);
                   ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:184:17: note: in expansion of macro 'GRN_INT32_VALUE'
         pfreq = GRN_INT32_VALUE(&pair_freq);
                 ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:185:17: note: in expansion of macro 'GRN_INT32_VALUE'
         ifreq = GRN_INT32_VALUE(&item_freq);
                 ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:186:18: note: in expansion of macro 'GRN_INT32_VALUE'
         ifreq2 = GRN_INT32_VALUE(&item_freq2);
                  ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:192:17: note: in expansion of macro 'GRN_INT32_VALUE'
         boost = GRN_INT32_VALUE(&item_boost);
                 ^~~~~~~~~~~~~~~
In file included from ../../include/groonga.h:40:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_ctx.h:21,
                 from suggest.c:24:
suggest.c: In function 'output':
../../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
suggest.c:260:7: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
       GRN_OBJ_FORMAT_FIN(ctx, &format);
       ^~~~~~~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_ctx.h:21,
                 from suggest.c:24:
suggest.c: In function 'complete_add_item':
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:278:7: note: in expansion of macro 'GRN_INT32_VALUE'
   if (GRN_INT32_VALUE(item_boost) >= 0) {
       ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:281:13: note: in expansion of macro 'GRN_INT32_VALUE'
             GRN_INT32_VALUE(item_freq) +
             ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:282:13: note: in expansion of macro 'GRN_INT32_VALUE'
             GRN_INT32_VALUE(item_boost);
             ^~~~~~~~~~~~~~~
suggest.c: In function 'correct':
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:422:23: note: in expansion of macro 'GRN_INT32_VALUE'
                   if (GRN_INT32_VALUE(&item_boost) >= 0) {
                       ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:426:30: note: in expansion of macro 'GRN_INT32_VALUE'
                             (GRN_INT32_VALUE(&item_freq2) >> 4) +
                              ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:427:29: note: in expansion of macro 'GRN_INT32_VALUE'
                             GRN_INT32_VALUE(&item_boost);
                             ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:477:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
                   if (GRN_FLOAT_VALUE(&score_value) < frequency_threshold) {
                       ^~~~~~~~~~~~~~~
suggest.c: In function 'learner_init_values':
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:629:28: note: in expansion of macro 'GRN_RECORD_VALUE'
   learner->post_event_id = GRN_RECORD_VALUE(learner->post_event);
                            ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:630:27: note: in expansion of macro 'GRN_RECORD_VALUE'
   learner->post_type_id = GRN_RECORD_VALUE(learner->post_type);
                           ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:631:27: note: in expansion of macro 'GRN_RECORD_VALUE'
   learner->post_item_id = GRN_RECORD_VALUE(learner->post_item);
                           ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:632:21: note: in expansion of macro 'GRN_RECORD_VALUE'
   learner->seq_id = GRN_RECORD_VALUE(learner->seq);
                     ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
suggest.c:633:30: note: in expansion of macro 'GRN_TIME_VALUE'
   learner->post_time_value = GRN_TIME_VALUE(learner->post_time);
                              ^~~~~~~~~~~~~~
suggest.c: In function 'learner_init_weight':
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:730:16: note: in expansion of macro 'GRN_UINT32_VALUE'
       weight = GRN_UINT32_VALUE(&weight_value);
                ^~~~~~~~~~~~~~~~
suggest.c: In function 'learner_learn_for_complete_and_correcnt':
suggest.c:857:8: warning: cast increases required alignment of target type [-Wcast-align]
   ep = (grn_id *)GRN_BULK_CURR(pre_events);
        ^
suggest.c:858:8: warning: cast increases required alignment of target type [-Wcast-align]
   es = (grn_id *)GRN_BULK_HEAD(pre_events);
        ^
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_ctx.h:21,
                 from suggest.c:24:
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
suggest.c:870:40: note: in expansion of macro 'GRN_TIME_VALUE'
     learn_distance = post_time_value - GRN_TIME_VALUE(&pre_time);
                                        ^~~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:876:33: note: in expansion of macro 'GRN_RECORD_VALUE'
     key = learner->key_prefix + GRN_RECORD_VALUE(pre_item);
                                 ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:885:9: note: in expansion of macro 'GRN_RECORD_VALUE'
     if (GRN_RECORD_VALUE(&pre_type)) {
         ^~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o suggest.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest suggest.lo  ../../lib/libgroonga.la -lmsgpackc
libtool: link: gcc -shared  -fPIC -DPIC  .libs/suggest.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs ../../lib/.libs/libgroonga.so -lmsgpackc  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,suggest.so -o .libs/suggest.so
libtool: link: ( cd ".libs" && rm -f "suggest.la" && ln -s "../suggest.la" "suggest.la" )
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/suggest'
Making all in query_expanders
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/query_expanders'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o tsv.lo tsv.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c tsv.c  -fPIC -DPIC -o .libs/tsv.o
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o tsv.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders tsv.lo  ../../lib/libgroonga.la
libtool: link: gcc -shared  -fPIC -DPIC  .libs/tsv.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,tsv.so -o .libs/tsv.so
libtool: link: ( cd ".libs" && rm -f "tsv.la" && ln -s "../tsv.la" "tsv.la" )
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/query_expanders'
Making all in ruby
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/ruby'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/ruby'
Making all in token_filters
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/token_filters'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o stop_word.lo stop_word.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o stem_la-stem.lo `test -f 'stem.c' || echo './'`stem.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c stem.c  -fPIC -DPIC -o .libs/stem_la-stem.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c stop_word.c  -fPIC -DPIC -o .libs/stop_word.o
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o stop_word.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters stop_word.lo  ../../lib/libgroonga.la
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined  -Wl,-z,relro -Wl,-z,now -o stem.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters stem_la-stem.lo ../../lib/libgroonga.la -lstemmer ../../lib/libgroonga.la
libtool: link: gcc -shared  -fPIC -DPIC  .libs/stop_word.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,stop_word.so -o .libs/stop_word.so
libtool: link: ( cd ".libs" && rm -f "stop_word.la" && ln -s "../stop_word.la" "stop_word.la" )
libtool: link: gcc -shared  -fPIC -DPIC  .libs/stem_la-stem.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs -lstemmer ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,stem.so -o .libs/stem.so
libtool: link: ( cd ".libs" && rm -f "stem.la" && ln -s "../stem.la" "stem.la" )
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/token_filters'
Making all in sharding
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/sharding'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/sharding'
Making all in functions
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/functions'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o vector.lo vector.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o string.lo string.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o number.lo number.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o time.lo time.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c number.c  -fPIC -DPIC -o .libs/number.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c vector.c  -fPIC -DPIC -o .libs/vector.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c string.c  -fPIC -DPIC -o .libs/string.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c time.c  -fPIC -DPIC -o .libs/time.o
In file included from ../../include/groonga.h:22:0,
                 from ../../include/groonga/plugin.h:23,
                 from vector.c:23:
vector.c: In function 'func_vector_slice':
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
vector.c:133:12: note: in expansion of macro 'GRN_INT32_VALUE'
     from = GRN_INT32_VALUE(from_raw);
            ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
vector.c:135:12: note: in expansion of macro 'GRN_INT64_VALUE'
     from = GRN_INT64_VALUE(from_raw);
            ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
vector.c:143:14: note: in expansion of macro 'GRN_INT64_VALUE'
       from = GRN_INT64_VALUE(&buffer);
              ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
vector.c:176:16: note: in expansion of macro 'GRN_INT32_VALUE'
       length = GRN_INT32_VALUE(length_raw);
                ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
vector.c:178:16: note: in expansion of macro 'GRN_INT64_VALUE'
       length = GRN_INT64_VALUE(length_raw);
                ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
vector.c:186:18: note: in expansion of macro 'GRN_INT64_VALUE'
         length = GRN_INT64_VALUE(&buffer);
                  ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
vector.c:256:28: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         grn_obj *element = GRN_PTR_VALUE_AT(target, i);
                            ^~~~~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../include/groonga/plugin.h:23,
                 from string.c:23:
string.c: In function 'func_string_substring':
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
string.c:138:12: note: in expansion of macro 'GRN_INT32_VALUE'
     from = GRN_INT32_VALUE(from_raw);
            ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
string.c:140:12: note: in expansion of macro 'GRN_INT64_VALUE'
     from = GRN_INT64_VALUE(from_raw);
            ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
string.c:148:14: note: in expansion of macro 'GRN_INT64_VALUE'
       from = GRN_INT64_VALUE(&buffer);
              ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
string.c:182:16: note: in expansion of macro 'GRN_INT32_VALUE'
       length = GRN_INT32_VALUE(length_raw);
                ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
string.c:184:16: note: in expansion of macro 'GRN_INT64_VALUE'
       length = GRN_INT64_VALUE(length_raw);
                ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
string.c:192:18: note: in expansion of macro 'GRN_INT64_VALUE'
         length = GRN_INT64_VALUE(&buffer);
                  ^~~~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../include/groonga/plugin.h:23,
                 from number.c:23:
number.c: In function 'func_number_classify':
../../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:92:18: note: in expansion of macro 'GRN_INT16_VALUE'
     number_raw = getter(number);                                        \
                  ^~~~~~
number.c:105:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_INT)
   ^~~~~~~~~~~~
number.c:127:5: note: in expansion of macro 'CLASSIFY_INT'
     CLASSIFY_INT(int16_t, GRN_INT16_VALUE, GRN_INT16_SET);
     ^~~~~~~~~~~~
../../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:93:20: note: in expansion of macro 'GRN_INT16_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:105:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_INT)
   ^~~~~~~~~~~~
number.c:127:5: note: in expansion of macro 'CLASSIFY_INT'
     CLASSIFY_INT(int16_t, GRN_INT16_VALUE, GRN_INT16_SET);
     ^~~~~~~~~~~~
../../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
number.c:92:18: note: in expansion of macro 'GRN_UINT16_VALUE'
     number_raw = getter(number);                                        \
                  ^~~~~~
number.c:111:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_UINT)
   ^~~~~~~~~~~~
number.c:130:5: note: in expansion of macro 'CLASSIFY_UINT'
     CLASSIFY_UINT(uint16_t, GRN_UINT16_VALUE, GRN_UINT16_SET);
     ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
number.c:93:20: note: in expansion of macro 'GRN_UINT16_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:111:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_UINT)
   ^~~~~~~~~~~~
number.c:130:5: note: in expansion of macro 'CLASSIFY_UINT'
     CLASSIFY_UINT(uint16_t, GRN_UINT16_VALUE, GRN_UINT16_SET);
     ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:92:18: note: in expansion of macro 'GRN_INT32_VALUE'
     number_raw = getter(number);                                        \
                  ^~~~~~
number.c:105:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_INT)
   ^~~~~~~~~~~~
number.c:133:5: note: in expansion of macro 'CLASSIFY_INT'
     CLASSIFY_INT(int32_t, GRN_INT32_VALUE, GRN_INT32_SET);
     ^~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:93:20: note: in expansion of macro 'GRN_INT32_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:105:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_INT)
   ^~~~~~~~~~~~
number.c:133:5: note: in expansion of macro 'CLASSIFY_INT'
     CLASSIFY_INT(int32_t, GRN_INT32_VALUE, GRN_INT32_SET);
     ^~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
number.c:92:18: note: in expansion of macro 'GRN_UINT32_VALUE'
     number_raw = getter(number);                                        \
                  ^~~~~~
number.c:111:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_UINT)
   ^~~~~~~~~~~~
number.c:136:5: note: in expansion of macro 'CLASSIFY_UINT'
     CLASSIFY_UINT(uint32_t, GRN_UINT32_VALUE, GRN_UINT32_SET);
     ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
number.c:93:20: note: in expansion of macro 'GRN_UINT32_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:111:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_UINT)
   ^~~~~~~~~~~~
number.c:136:5: note: in expansion of macro 'CLASSIFY_UINT'
     CLASSIFY_UINT(uint32_t, GRN_UINT32_VALUE, GRN_UINT32_SET);
     ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:92:18: note: in expansion of macro 'GRN_INT64_VALUE'
     number_raw = getter(number);                                        \
                  ^~~~~~
number.c:105:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_INT)
   ^~~~~~~~~~~~
number.c:139:5: note: in expansion of macro 'CLASSIFY_INT'
     CLASSIFY_INT(int64_t, GRN_INT64_VALUE, GRN_INT64_SET);
     ^~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:93:20: note: in expansion of macro 'GRN_INT64_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:105:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_INT)
   ^~~~~~~~~~~~
number.c:139:5: note: in expansion of macro 'CLASSIFY_INT'
     CLASSIFY_INT(int64_t, GRN_INT64_VALUE, GRN_INT64_SET);
     ^~~~~~~~~~~~
../../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
number.c:92:18: note: in expansion of macro 'GRN_UINT64_VALUE'
     number_raw = getter(number);                                        \
                  ^~~~~~
number.c:111:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_UINT)
   ^~~~~~~~~~~~
number.c:142:5: note: in expansion of macro 'CLASSIFY_UINT'
     CLASSIFY_UINT(uint64_t, GRN_UINT64_VALUE, GRN_UINT64_SET);
     ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
number.c:93:20: note: in expansion of macro 'GRN_UINT64_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:111:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_UINT)
   ^~~~~~~~~~~~
number.c:142:5: note: in expansion of macro 'CLASSIFY_UINT'
     CLASSIFY_UINT(uint64_t, GRN_UINT64_VALUE, GRN_UINT64_SET);
     ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:92:18: note: in expansion of macro 'GRN_FLOAT_VALUE'
     number_raw = getter(number);                                        \
                  ^~~~~~
number.c:117:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(double, getter, setter, CLASSIFIER_FLOAT)
   ^~~~~~~~~~~~
number.c:145:5: note: in expansion of macro 'CLASSIFY_FLOAT'
     CLASSIFY_FLOAT(GRN_FLOAT_VALUE, GRN_FLOAT_SET);
     ^~~~~~~~~~~~~~
../../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:93:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:117:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(double, getter, setter, CLASSIFIER_FLOAT)
   ^~~~~~~~~~~~
number.c:145:5: note: in expansion of macro 'CLASSIFY_FLOAT'
     CLASSIFY_FLOAT(GRN_FLOAT_VALUE, GRN_FLOAT_SET);
     ^~~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../include/groonga/plugin.h:23,
                 from time.c:23:
time.c: In function 'func_time_classify_raw':
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
time.c:128:20: note: in expansion of macro 'GRN_UINT32_VALUE'
     interval_raw = GRN_UINT32_VALUE(&casted_interval);
                    ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
time.c:137:16: note: in expansion of macro 'GRN_TIME_VALUE'
     time_raw = GRN_TIME_VALUE(time);
                ^~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o number.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions number.lo -lm ../../lib/libgroonga.la
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o time.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions time.lo  ../../lib/libgroonga.la
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o vector.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions vector.lo  ../../lib/libgroonga.la
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o string.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions string.lo  ../../lib/libgroonga.la
libtool: link: gcc -shared  -fPIC -DPIC  .libs/number.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs -lm ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,number.so -o .libs/number.so
libtool: link: gcc -shared  -fPIC -DPIC  .libs/vector.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,vector.so -o .libs/vector.so
libtool: link: gcc -shared  -fPIC -DPIC  .libs/time.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,time.so -o .libs/time.so
libtool: link: gcc -shared  -fPIC -DPIC  .libs/string.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,string.so -o .libs/string.so
libtool: link: ( cd ".libs" && rm -f "number.la" && ln -s "../number.la" "number.la" )
libtool: link: ( cd ".libs" && rm -f "vector.la" && ln -s "../vector.la" "vector.la" )
libtool: link: ( cd ".libs" && rm -f "time.la" && ln -s "../time.la" "time.la" )
libtool: link: ( cd ".libs" && rm -f "string.la" && ln -s "../string.la" "string.la" )
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/functions'
Making all in expression_rewriters
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/expression_rewriters'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/expression_rewriters'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins'
Making all in src
make[3]: Entering directory '/<<PKGBUILDDIR>>/src'
Making all in suggest
make[4]: Entering directory '/<<PKGBUILDDIR>>/src/suggest'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I../.. -I. -I../../include -I../../lib    -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o libutil_la-util.lo `test -f 'util.c' || echo './'`util.c
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I../.. -I. -I../../include -I../../lib    -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o groonga_suggest_create_dataset-groonga_suggest_create_dataset.o `test -f 'groonga_suggest_create_dataset.c' || echo './'`groonga_suggest_create_dataset.c
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I../.. -I. -I../../include -I../../lib    -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o groonga_suggest_learner-groonga_suggest_learner.o `test -f 'groonga_suggest_learner.c' || echo './'`groonga_suggest_learner.c
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I../.. -I. -I../../include -I../../lib    -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o groonga_suggest_httpd-groonga_suggest_httpd.o `test -f 'groonga_suggest_httpd.c' || echo './'`groonga_suggest_httpd.c
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
groonga_suggest_learner.c: In function 'send_handler':
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:284:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(last);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:284:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(last);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:284:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(last);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:284:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(last);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:284:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(last);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:284:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(last);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:285:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(kana);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:285:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(kana);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:285:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(kana);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:285:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(kana);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:285:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(kana);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:285:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(kana);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:286:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:286:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:286:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:286:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:286:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:286:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:287:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:287:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:287:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:287:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:287:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:287:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:288:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(buzz);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:288:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(buzz);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:288:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(buzz);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:288:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(buzz);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:288:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(buzz);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:288:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(buzz);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:289:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(boost);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:289:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(boost);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:289:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(boost);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:289:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(boost);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:289:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(boost);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:289:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(boost);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:326:24: note: in expansion of macro 'GRN_INT32_VALUE'
                   if (!GRN_INT32_VALUE(&f)) {
                        ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:328:26: note: in expansion of macro 'GRN_INT32_VALUE'
                     if (!GRN_INT32_VALUE(&f)) {
                          ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:330:28: note: in expansion of macro 'GRN_INT32_VALUE'
                       if (!GRN_INT32_VALUE(&f)) { continue; }
                            ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:354:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(pre);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:354:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(pre);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:354:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(pre);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:354:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(pre);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:354:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(pre);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:354:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(pre);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:355:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(post);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:355:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(post);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:355:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(post);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:355:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(post);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:355:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(post);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:355:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(post);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:356:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq0);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:356:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq0);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:356:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq0);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:356:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq0);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:356:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq0);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:356:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq0);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:357:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq1);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:357:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq1);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:357:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq1);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:357:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq1);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:357:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq1);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:357:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq1);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:358:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:358:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:358:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:358:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:358:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:358:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o groonga-suggest-create-dataset groonga_suggest_create_dataset-groonga_suggest_create_dataset.o ../../lib/libgroonga.la -lz -ldl -lpthread -lm  
libtool: compile:  gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -I../.. -I. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c util.c  -fPIC -DPIC -o .libs/libutil_la-util.o
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/groonga-suggest-create-dataset groonga_suggest_create_dataset-groonga_suggest_create_dataset.o  ../../lib/.libs/libgroonga.so -lz -ldl -lpthread -lm
/bin/bash ../../libtool  --tag=CC   --mode=link gcc -fno-strict-aliasing    -I../../vendor/mruby-source/include  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -no-undefined -Wl,-z,relro -Wl,-z,now -o libutil.la  libutil_la-util.lo  -lz -ldl -lpthread -lm  
libtool: link: ar cru .libs/libutil.a .libs/libutil_la-util.o 
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libutil.a
libtool: link: ( cd ".libs" && rm -f "libutil.la" && ln -s "../libutil.la" "libutil.la" )
/bin/bash ../../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o groonga-suggest-httpd groonga_suggest_httpd-groonga_suggest_httpd.o libutil.la ../../lib/libgroonga.la -levent -lzmq -lmsgpackc -lz -ldl -lpthread -lm  
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/groonga-suggest-httpd groonga_suggest_httpd-groonga_suggest_httpd.o  ./.libs/libutil.a ../../lib/.libs/libgroonga.so -levent -lzmq -lmsgpackc -lz -ldl -lpthread -lm
/bin/bash ../../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o groonga-suggest-learner groonga_suggest_learner-groonga_suggest_learner.o libutil.la ../../lib/libgroonga.la -levent -lzmq -lmsgpackc -lz -ldl -lpthread -lm  
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/groonga-suggest-learner groonga_suggest_learner-groonga_suggest_learner.o  ./.libs/libutil.a ../../lib/.libs/libgroonga.so -levent -lzmq -lmsgpackc -lz -ldl -lpthread -lm
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src/suggest'
Making all in httpd
make[4]: Entering directory '/<<PKGBUILDDIR>>/src/httpd'
(cd ../../vendor/nginx-1.11.8 && make build)
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make -f objs/Makefile
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/nginx.o \
	src/core/nginx.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_log.o \
	src/core/ngx_log.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_palloc.o \
	src/core/ngx_palloc.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_array.o \
	src/core/ngx_array.c
src/core/nginx.c: In function 'main':
src/core/nginx.c:298:34: warning: passing argument 1 of 'ngx_write_stdout' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 ngx_write_stdout("# configuration file ");
                                  ^~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:258:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stdout(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:301:34: warning: passing argument 1 of 'ngx_write_stdout' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 ngx_write_stdout(":" NGX_LINEFEED);
                                  ^~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:258:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stdout(char *text)
 ^~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:51:0,
                 from src/core/nginx.c:9:
src/os/unix/ngx_files.h:158:34: warning: passing argument 1 of 'ngx_write_stdout' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 #define NGX_LINEFEED             "\x0a"
                                  ^
src/core/nginx.c:306:34: note: in expansion of macro 'NGX_LINEFEED'
                 ngx_write_stdout(NGX_LINEFEED);
                                  ^~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:258:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stdout(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:321:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/core/nginx.c: In function 'ngx_show_version_info':
src/core/nginx.c:378:22: warning: passing argument 1 of 'ngx_write_stderr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_write_stderr("nginx version: " NGINX_VER_BUILD NGX_LINEFEED);
                      ^~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:251:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stderr(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:382:13: warning: passing argument 1 of 'ngx_write_stderr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             "Usage: nginx [-?hvVtTq] [-s signal] [-c filename] "
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:251:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stderr(char *text)
 ^~~~~~~~~~~~~~~~
src/core/ngx_palloc.c: In function 'ngx_palloc_block':
src/core/ngx_palloc.c:191:11: warning: cast increases required alignment of target type [-Wcast-align]
     new = (ngx_pool_t *) m;
           ^
src/core/nginx.c:418:30: warning: passing argument 1 of 'ngx_write_stderr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_write_stderr("built with " OPENSSL_VERSION_TEXT NGX_LINEFEED);
                              ^~~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:251:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stderr(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:420:30: warning: passing argument 1 of 'ngx_write_stderr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_write_stderr("built with " OPENSSL_VERSION_TEXT
                              ^~~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:251:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stderr(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:422:39: warning: cast from function call of type 'const char *' to non-matching type 'unsigned int' [-Wbad-function-cast]
             ngx_write_stderr((char *) (uintptr_t) ngx_ssl_version());
                                       ^
src/core/nginx.c:423:30: warning: passing argument 1 of 'ngx_write_stderr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_write_stderr(")" NGX_LINEFEED);
                              ^~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:251:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stderr(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:426:26: warning: passing argument 1 of 'ngx_write_stderr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_write_stderr("TLS SNI support enabled" NGX_LINEFEED);
                          ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:251:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stderr(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:432:26: warning: passing argument 1 of 'ngx_write_stderr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_write_stderr("configure arguments:" NGX_CONFIGURE NGX_LINEFEED);
                          ^~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:251:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stderr(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c: In function 'ngx_set_environment':
src/core/nginx.c:505:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/core/nginx.c: In function 'ngx_exec_new_binary':
src/core/nginx.c:640:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ctx.name = "new binary process";
              ^
src/core/nginx.c:672:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     env[n++] = "SPARE=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
              ^
src/core/nginx.c:693:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/core/nginx.c: In function 'ngx_core_module_init_conf':
src/core/nginx.c:1098:23: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ccf->username = NGX_USER;
                       ^
src/core/nginx.c: In function 'ngx_set_user':
src/core/nginx.c:1185:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/nginx.c: In function 'ngx_set_priority':
src/core/nginx.c:1267:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/nginx.c:1287:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid number";
                ^~~~~~~~~~~~~~~~
src/core/nginx.c: In function 'ngx_set_cpu_affinity':
src/core/nginx.c:1310:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/nginx.c: In function 'ngx_get_cpu_affinity':
src/core/nginx.c:1406:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(ngx_cycle->conf_ctx,
           ^
src/core/nginx.c: In function 'ngx_set_worker_processes':
src/core/nginx.c:1459:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/nginx.c:1472:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/nginx.c: In function 'ngx_load_module':
src/core/nginx.c:1491:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is specified too late";
                ^~~~~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_list.o \
	src/core/ngx_list.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_hash.o \
	src/core/ngx_hash.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_buf.o \
	src/core/ngx_buf.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_queue.o \
	src/core/ngx_queue.c
src/core/ngx_hash.c: In function 'ngx_hash_find':
src/core/ngx_hash.c:43:15: warning: cast increases required alignment of target type [-Wcast-align]
         elt = (ngx_hash_elt_t *) ngx_align_ptr(&elt->name[0] + elt->len,
               ^
src/core/ngx_hash.c: In function 'ngx_hash_init':
src/core/ngx_hash.c:367:19: warning: cast increases required alignment of target type [-Wcast-align]
         buckets = (ngx_hash_elt_t **)
                   ^
src/core/ngx_hash.c:391:22: warning: cast increases required alignment of target type [-Wcast-align]
         buckets[i] = (ngx_hash_elt_t *) elts;
                      ^
src/core/ngx_hash.c:405:15: warning: cast increases required alignment of target type [-Wcast-align]
         elt = (ngx_hash_elt_t *) ((u_char *) buckets[key] + test[key]);
               ^
src/core/ngx_hash.c:420:15: warning: cast increases required alignment of target type [-Wcast-align]
         elt = (ngx_hash_elt_t *) ((u_char *) buckets[i] + test[i]);
               ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_output_chain.o \
	src/core/ngx_output_chain.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_string.o \
	src/core/ngx_string.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_parse.o \
	src/core/ngx_parse.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_parse_time.o \
	src/core/ngx_parse_time.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_inet.o \
	src/core/ngx_inet.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_file.o \
	src/core/ngx_file.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_crc32.o \
	src/core/ngx_crc32.c
src/core/ngx_inet.c: In function 'ngx_sock_ntop':
src/core/ngx_inet.c:198:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) sa;
               ^
src/core/ngx_inet.c:215:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) sa;
                ^
src/core/ngx_inet.c: In function 'ngx_cidr_match':
src/core/ngx_inet.c:492:19: warning: cast increases required alignment of target type [-Wcast-align]
         inaddr = ((struct sockaddr_in *) sa)->sin_addr.s_addr;
                   ^
src/core/ngx_inet.c:497:21: warning: cast increases required alignment of target type [-Wcast-align]
         inaddr6 = &((struct sockaddr_in6 *) sa)->sin6_addr;
                     ^
src/core/ngx_inet.c: In function 'ngx_parse_addr':
src/core/ngx_inet.c:600:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) addr->sockaddr;
                ^
src/core/ngx_inet.c:606:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) addr->sockaddr;
               ^
src/core/ngx_inet.c: In function 'ngx_parse_unix_domain_url':
src/core/ngx_inet.c:726:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "no path in the unix domain socket";
                ^
src/core/ngx_inet.c:734:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "too long path in the unix domain socket";
                ^
src/core/ngx_inet.c:739:20: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     saun = (struct sockaddr_un *) &u->sockaddr;
                    ^~~~~~~~~~~
src/core/ngx_inet.c: In function 'ngx_parse_inet_url':
src/core/ngx_inet.c:788:19: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     sin = (struct sockaddr_in *) &u->sockaddr;
                   ^~~~~~~~~~~
src/core/ngx_inet.c:811:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid host";
                    ^
src/core/ngx_inet.c:833:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid port";
                    ^
src/core/ngx_inet.c:857:32: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                         u->err = "invalid port";
                                ^
src/core/ngx_inet.c:882:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "no host";
                ^
src/core/ngx_inet.c:948:24: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
         sin6 = (struct sockaddr_in6 *) &u->sockaddr;
                        ^~~~~~~~~~~~
src/core/ngx_inet.c:958:23: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
         sin = (struct sockaddr_in *) &u->sockaddr;
                       ^~~~~~~~~~~
src/core/ngx_inet.c: In function 'ngx_parse_inet6_url':
src/core/ngx_inet.c:981:20: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     sin6 = (struct sockaddr_in6 *) &u->sockaddr;
                    ^~~~~~~~~~~~
src/core/ngx_inet.c:991:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "invalid host";
                ^
src/core/ngx_inet.c:1001:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid host";
                    ^
src/core/ngx_inet.c:1013:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid host";
                    ^
src/core/ngx_inet.c:1024:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid port";
                    ^
src/core/ngx_inet.c:1043:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "no host";
                ^
src/core/ngx_inet.c:1051:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "invalid IPv6 address";
                ^
src/core/ngx_inet.c: In function 'ngx_inet_resolve_host':
src/core/ngx_inet.c:1128:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "host not found";
                ^
src/core/ngx_inet.c:1151:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "host not found";
                ^
src/core/ngx_inet.c: In function 'ngx_cmp_sockaddr':
src/core/ngx_inet.c:1380:17: warning: cast increases required alignment of target type [-Wcast-align]
         sin61 = (struct sockaddr_in6 *) sa1;
                 ^
src/core/ngx_inet.c:1381:17: warning: cast increases required alignment of target type [-Wcast-align]
         sin62 = (struct sockaddr_in6 *) sa2;
                 ^
src/core/ngx_inet.c:1420:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin1 = (struct sockaddr_in *) sa1;
                ^
src/core/ngx_inet.c:1421:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin2 = (struct sockaddr_in *) sa2;
                ^
src/core/ngx_inet.c: In function 'ngx_inet_get_port':
src/core/ngx_inet.c:1450:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) sa;
                ^
src/core/ngx_inet.c:1460:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) sa;
               ^
src/core/ngx_inet.c: In function 'ngx_inet_set_port':
src/core/ngx_inet.c:1478:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) sa;
                ^
src/core/ngx_inet.c:1489:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) sa;
               ^
src/core/ngx_file.c: In function 'ngx_conf_set_path_slot':
src/core/ngx_file.c:370:12: warning: cast increases required alignment of target type [-Wcast-align]
     slot = (ngx_path_t **) (p + cmd->offset);
            ^
src/core/ngx_file.c:373:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_file.c:399:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             return "invalid value";
                    ^~~~~~~~~~~~~~~
src/core/ngx_file.c:407:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_file.c: In function 'ngx_conf_set_access_slot':
src/core/ngx_file.c:468:14: warning: cast increases required alignment of target type [-Wcast-align]
     access = (ngx_uint_t *) (confp + cmd->offset);
              ^
src/core/ngx_file.c:471:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_murmurhash.o \
	src/core/ngx_murmurhash.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_md5.o \
	src/core/ngx_md5.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_sha1.o \
	src/core/ngx_sha1.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_rbtree.o \
	src/core/ngx_rbtree.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_radix_tree.o \
	src/core/ngx_radix_tree.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_slab.o \
	src/core/ngx_slab.c
src/core/ngx_radix_tree.c: In function 'ngx_radix_alloc':
src/core/ngx_radix_tree.c:483:9: warning: cast increases required alignment of target type [-Wcast-align]
     p = (ngx_radix_node_t *) tree->start;
         ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_times.o \
	src/core/ngx_times.c
src/core/ngx_slab.c: In function 'ngx_slab_init':
src/core/ngx_slab.c:45:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_slab_page_t *) ((u_char *) (pool) + sizeof(ngx_slab_pool_t))
     ^
src/core/ngx_slab.c:106:13: note: in expansion of macro 'ngx_slab_slots'
     slots = ngx_slab_slots(pool);
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c:124:19: warning: cast increases required alignment of target type [-Wcast-align]
     pool->stats = (ngx_slab_stat_t *) p;
                   ^
src/core/ngx_slab.c:133:19: warning: cast increases required alignment of target type [-Wcast-align]
     pool->pages = (ngx_slab_page_t *) p;
                   ^
src/core/ngx_slab.c: In function 'ngx_slab_alloc_locked':
src/core/ngx_slab.c:45:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_slab_page_t *) ((u_char *) (pool) + sizeof(ngx_slab_pool_t))
     ^
src/core/ngx_slab.c:220:13: note: in expansion of macro 'ngx_slab_slots'
     slots = ngx_slab_slots(pool);
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c:325:45: warning: passing argument 3 of 'ngx_slab_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_slab_error(pool, NGX_LOG_ALERT, "ngx_slab_alloc(): page is busy");
                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/core/ngx_slab.c:76:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c: In function 'ngx_slab_free_locked':
src/core/ngx_slab.c:462:45: warning: passing argument 3 of 'ngx_slab_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_slab_error(pool, NGX_LOG_ALERT, "ngx_slab_free(): outside of pool");
                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/core/ngx_slab.c:76:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c:45:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_slab_page_t *) ((u_char *) (pool) + sizeof(ngx_slab_pool_t))
     ^
src/core/ngx_slab.c:492:25: note: in expansion of macro 'ngx_slab_slots'
                 slots = ngx_slab_slots(pool);
                         ^~~~~~~~~~~~~~
src/core/ngx_slab.c:45:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_slab_page_t *) ((u_char *) (pool) + sizeof(ngx_slab_pool_t))
     ^
src/core/ngx_slab.c:544:25: note: in expansion of macro 'ngx_slab_slots'
                 slots = ngx_slab_slots(pool);
                         ^~~~~~~~~~~~~~
src/core/ngx_slab.c:45:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_slab_page_t *) ((u_char *) (pool) + sizeof(ngx_slab_pool_t))
     ^
src/core/ngx_slab.c:584:25: note: in expansion of macro 'ngx_slab_slots'
                 slots = ngx_slab_slots(pool);
                         ^~~~~~~~~~~~~~
src/core/ngx_slab.c:616:28: warning: passing argument 3 of 'ngx_slab_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "ngx_slab_free(): page is already free");
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/core/ngx_slab.c:76:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c:622:28: warning: passing argument 3 of 'ngx_slab_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "ngx_slab_free(): pointer to wrong page");
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/core/ngx_slab.c:76:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c:651:20: warning: passing argument 3 of 'ngx_slab_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                    "ngx_slab_free(): pointer to wrong chunk");
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/core/ngx_slab.c:76:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c:658:20: warning: passing argument 3 of 'ngx_slab_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                    "ngx_slab_free(): chunk is already free");
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/core/ngx_slab.c:76:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c: In function 'ngx_slab_alloc_pages':
src/core/ngx_slab.c:715:24: warning: passing argument 3 of 'ngx_slab_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                        "ngx_slab_alloc() failed: no memory");
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/core/ngx_slab.c:76:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_shmtx.o \
	src/core/ngx_shmtx.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_connection.o \
	src/core/ngx_connection.c
src/core/ngx_times.c:58:26: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *week[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
                          ^~~~~
src/core/ngx_times.c:58:33: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *week[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
                                 ^~~~~
src/core/ngx_times.c:58:40: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *week[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
                                        ^~~~~
src/core/ngx_times.c:58:47: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *week[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
                                               ^~~~~
src/core/ngx_times.c:58:54: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *week[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
                                                      ^~~~~
src/core/ngx_times.c:58:61: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *week[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
                                                             ^~~~~
src/core/ngx_times.c:58:68: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *week[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
                                                                    ^~~~~
src/core/ngx_times.c:59:28: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                            ^~~~~
src/core/ngx_times.c:59:35: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                   ^~~~~
src/core/ngx_times.c:59:42: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                          ^~~~~
src/core/ngx_times.c:59:49: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                                 ^~~~~
src/core/ngx_times.c:59:56: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                                        ^~~~~
src/core/ngx_times.c:59:63: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                                               ^~~~~
src/core/ngx_times.c:60:28: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                            ^~~~~
src/core/ngx_times.c:60:35: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                   ^~~~~
src/core/ngx_times.c:60:42: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                          ^~~~~
src/core/ngx_times.c:60:49: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                                 ^~~~~
src/core/ngx_times.c:60:56: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                                        ^~~~~
src/core/ngx_times.c:60:63: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                                               ^~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_cycle.o \
	src/core/ngx_cycle.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_spinlock.o \
	src/core/ngx_spinlock.c
src/core/ngx_connection.c: In function 'ngx_clone_listening':
src/core/ngx_connection.c:109:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cf->cycle->conf_ctx,
           ^
In file included from src/core/ngx_core.h:62:0,
                 from src/core/ngx_connection.c:9:
src/core/ngx_connection.c: In function 'ngx_drain_connections':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_connection.c:1241:13: note: in expansion of macro 'ngx_queue_data'
         c = ngx_queue_data(q, ngx_connection_t, queue);
             ^~~~~~~~~~~~~~
src/core/ngx_connection.c: In function 'ngx_connection_local_sockaddr':
src/core/ngx_connection.c:1292:20: warning: cast increases required alignment of target type [-Wcast-align]
             sin6 = (struct sockaddr_in6 *) c->local_sockaddr;
                    ^
src/core/ngx_connection.c:1308:19: warning: cast increases required alignment of target type [-Wcast-align]
             sin = (struct sockaddr_in *) c->local_sockaddr;
                   ^
src/core/ngx_connection.c:1319:55: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_connection_error(c, ngx_socket_errno, "getsockname() failed");
                                                       ^~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/core/ngx_connection.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_rwlock.o \
	src/core/ngx_rwlock.c
src/core/ngx_cycle.c: In function 'ngx_init_cycle':
src/core/ngx_cycle.c:311:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/core/ngx_cycle.c:326:19: warning: cast increases required alignment of target type [-Wcast-align]
         old_ccf = (ngx_core_conf_t *) ngx_get_conf(old_cycle->conf_ctx,
                   ^
src/core/ngx_cycle.c:804:19: warning: cast increases required alignment of target type [-Wcast-align]
         old_ccf = (ngx_core_conf_t *) ngx_get_conf(old_cycle->conf_ctx,
                   ^
src/core/ngx_cycle.c: In function 'ngx_init_zone_pool':
src/core/ngx_cycle.c:876:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (ngx_slab_pool_t *) zn->shm.addr;
          ^
src/core/ngx_cycle.c: In function 'ngx_delete_pidfile':
src/core/ngx_cycle.c:986:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/core/ngx_cycle.c: In function 'ngx_signal_process':
src/core/ngx_cycle.c:1008:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_cpuinfo.o \
	src/core/ngx_cpuinfo.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_conf_file.o \
	src/core/ngx_conf_file.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_module.o \
	src/core/ngx_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_resolver.o \
	src/core/ngx_resolver.c
src/core/ngx_conf_file.c: In function 'ngx_conf_handler':
src/core/ngx_conf_file.c:455:26: warning: cast increases required alignment of target type [-Wcast-align]
                 confp = *(void **) ((char *) cf->ctx + cmd->conf);
                          ^
src/core/ngx_conf_file.c: In function 'ngx_conf_set_flag_slot':
src/core/ngx_conf_file.c:1027:10: warning: cast increases required alignment of target type [-Wcast-align]
     fp = (ngx_flag_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1030:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_str_slot':
src/core/ngx_conf_file.c:1066:13: warning: cast increases required alignment of target type [-Wcast-align]
     field = (ngx_str_t *) (p + cmd->offset);
             ^
src/core/ngx_conf_file.c:1069:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_str_array_slot':
src/core/ngx_conf_file.c:1094:9: warning: cast increases required alignment of target type [-Wcast-align]
     a = (ngx_array_t **) (p + cmd->offset);
         ^
src/core/ngx_conf_file.c: In function 'ngx_conf_set_keyval_slot':
src/core/ngx_conf_file.c:1131:9: warning: cast increases required alignment of target type [-Wcast-align]
     a = (ngx_array_t **) (p + cmd->offset);
         ^
src/core/ngx_conf_file.c: In function 'ngx_conf_set_num_slot':
src/core/ngx_conf_file.c:1169:10: warning: cast increases required alignment of target type [-Wcast-align]
     np = (ngx_int_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1172:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1178:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid number";
                ^~~~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_size_slot':
src/core/ngx_conf_file.c:1200:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (size_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1202:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1209:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_off_slot':
src/core/ngx_conf_file.c:1231:10: warning: cast increases required alignment of target type [-Wcast-align]
     op = (off_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1233:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1240:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_msec_slot':
src/core/ngx_conf_file.c:1262:11: warning: cast increases required alignment of target type [-Wcast-align]
     msp = (ngx_msec_t *) (p + cmd->offset);
           ^
src/core/ngx_conf_file.c:1264:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1271:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_sec_slot':
src/core/ngx_conf_file.c:1293:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (time_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1295:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1302:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_bufs_slot':
src/core/ngx_conf_file.c:1323:12: warning: cast increases required alignment of target type [-Wcast-align]
     bufs = (ngx_bufs_t *) (p + cmd->offset);
            ^
src/core/ngx_conf_file.c:1325:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1332:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1337:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_enum_slot':
src/core/ngx_conf_file.c:1353:10: warning: cast increases required alignment of target type [-Wcast-align]
     np = (ngx_uint_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1356:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_bitmask_slot':
src/core/ngx_conf_file.c:1391:10: warning: cast increases required alignment of target type [-Wcast-align]
     np = (ngx_uint_t *) (p + cmd->offset);
          ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_open_file_cache.o \
	src/core/ngx_open_file_cache.c
src/core/ngx_resolver.c: In function 'ngx_resolver_cleanup_tree':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:346:14: note: in expansion of macro 'ngx_resolver_node'
         rn = ngx_resolver_node(ngx_rbtree_min(tree->root, tree->sentinel));
              ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolve_start':
src/core/ngx_resolver.c:385:43: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
             temp->addr.sockaddr = (struct sockaddr *) &temp->sin;
                                           ^~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolve_name_locked':
src/core/ngx_resolver.c:658:54: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
                         ctx->addr.sockaddr = (struct sockaddr *) &ctx->sin;
                                                      ^~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolve_addr':
src/core/ngx_resolver.c:946:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) ctx->addr.sockaddr;
                ^
src/core/ngx_resolver.c:961:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) ctx->addr.sockaddr;
               ^
In file included from src/core/ngx_core.h:62:0,
                 from src/core/ngx_resolver.c:9:
src/core/ngx_resolver.c: In function 'ngx_resolver_expire':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_resolver.c:1256:14: note: in expansion of macro 'ngx_queue_data'
         rn = ngx_queue_data(q, ngx_resolver_node_t, queue);
              ^~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_send_query':
src/core/ngx_resolver.c:1287:25: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         rec->log.action = "resolving";
                         ^
In file included from src/core/ngx_core.h:62:0,
                 from src/core/ngx_resolver.c:9:
src/core/ngx_resolver.c: In function 'ngx_resolver_resend':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_resolver.c:1521:14: note: in expansion of macro 'ngx_queue_data'
         rn = ngx_queue_data(q, ngx_resolver_node_t, queue);
              ^~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_process_response':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_resolver.c:1768:18: note: in expansion of macro 'ngx_queue_data'
             rn = ngx_queue_data(q, ngx_resolver_node_t, queue);
                  ^~~~~~~~~~~~~~
src/core/ngx_resolver.c:1794:13: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         err = "invalid number of questions in DNS response";
             ^
src/core/ngx_resolver.c:1813:13: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         err = "zero-length domain name in DNS response";
             ^
src/core/ngx_resolver.c:1872:9: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     err = "short DNS response";
         ^
src/core/ngx_resolver.c: In function 'ngx_resolver_process_a':
src/core/ngx_resolver.c:2147:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "invalid name in DNS response";
                 ^
src/core/ngx_resolver.c:2184:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "unexpected A record in DNS response";
                     ^
src/core/ngx_resolver.c:2189:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "invalid A record in DNS response";
                     ^
src/core/ngx_resolver.c:2205:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "unexpected AAAA record in DNS response";
                     ^
src/core/ngx_resolver.c:2210:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "invalid AAAA record in DNS response";
                     ^
src/core/ngx_resolver.c:2428:46: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
                 ctx->addr.sockaddr = (struct sockaddr *) &ctx->sin;
                                              ^~~~~~~~
src/core/ngx_resolver.c:2532:9: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     err = "short DNS response";
         ^
src/core/ngx_resolver.c: In function 'ngx_resolver_process_srv':
src/core/ngx_resolver.c:2689:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "invalid name DNS response";
                 ^
src/core/ngx_resolver.c:2917:9: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     err = "short DNS response";
         ^
src/core/ngx_resolver.c: In function 'ngx_resolver_process_ptr':
src/core/ngx_resolver.c:3261:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "invalid name in DNS response";
                 ^
src/core/ngx_resolver.c:3372:9: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     err = "short DNS response";
         ^
src/core/ngx_resolver.c: In function 'ngx_resolver_lookup_name':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3414:14: note: in expansion of macro 'ngx_resolver_node'
         rn = ngx_resolver_node(node);
              ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_lookup_srv':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3455:14: note: in expansion of macro 'ngx_resolver_node'
         rn = ngx_resolver_node(node);
              ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_lookup_addr':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3494:16: note: in expansion of macro 'ngx_resolver_node'
         return ngx_resolver_node(node);
                ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_lookup_addr6':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3530:14: note: in expansion of macro 'ngx_resolver_node'
         rn = ngx_resolver_node(node);
              ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_rbtree_insert_value':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3568:18: note: in expansion of macro 'ngx_resolver_node'
             rn = ngx_resolver_node(node);
                  ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3569:23: note: in expansion of macro 'ngx_resolver_node'
             rn_temp = ngx_resolver_node(temp);
                       ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_rbtree_insert_addr6_value':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3611:18: note: in expansion of macro 'ngx_resolver_node'
             rn = ngx_resolver_node(node);
                  ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3612:23: note: in expansion of macro 'ngx_resolver_node'
             rn_temp = ngx_resolver_node(temp);
                       ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_create_addr_query':
src/core/ngx_resolver.c:3907:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) addr->sockaddr;
                ^
src/core/ngx_resolver.c:3922:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) addr->sockaddr;
               ^
src/core/ngx_resolver.c: In function 'ngx_resolver_copy':
src/core/ngx_resolver.c:3977:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "name is out of response";
                 ^
src/core/ngx_resolver.c:3982:9: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     err = "compression pointers loop";
         ^
src/core/ngx_resolver.c: In function 'ngx_resolver_strerror':
src/core/ngx_resolver.c:4340:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Format error",     /* FORMERR */
         ^~~~~~~~~~~~~~
src/core/ngx_resolver.c:4341:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Server failure",   /* SERVFAIL */
         ^~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4342:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Host not found",   /* NXDOMAIN */
         ^~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4343:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Unimplemented",    /* NOTIMP */
         ^~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4344:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Operation refused" /* REFUSED */
         ^~~~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4352:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "Operation timed out";
                ^~~~~~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4355:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "Unknown error";
            ^~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_crypt.o \
	src/core/ngx_crypt.c
In file included from src/core/ngx_core.h:62:0,
                 from src/core/ngx_open_file_cache.c:9:
src/core/ngx_open_file_cache.c: In function 'ngx_open_file_cache_cleanup':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_open_file_cache.c:107:16: note: in expansion of macro 'ngx_queue_data'
         file = ngx_queue_data(q, ngx_cached_open_file_t, queue);
                ^~~~~~~~~~~~~~
src/core/ngx_open_file_cache.c: In function 'ngx_open_cached_file':
src/core/ngx_open_file_cache.c:261:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 of->failed = file->disable_symlinks ? ngx_openat_file_n
                            ^
src/core/ngx_open_file_cache.c: In function 'ngx_open_file_wrapper':
src/core/ngx_open_file_cache.c:642:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_open_file_n;
                        ^
src/core/ngx_open_file_cache.c:667:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_open_file_n;
                        ^
src/core/ngx_open_file_cache.c:682:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_openat_file_n;
                        ^
src/core/ngx_open_file_cache.c:721:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_openat_file_n;
                        ^
src/core/ngx_open_file_cache.c:765:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         of->failed = ngx_openat_file_n;
                    ^
src/core/ngx_open_file_cache.c: In function 'ngx_file_info_wrapper':
src/core/ngx_open_file_cache.c:808:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_file_info_n;
                        ^
src/core/ngx_open_file_cache.c:826:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         of->failed = ngx_fd_info_n;
                    ^
In file included from src/core/ngx_core.h:62:0,
                 from src/core/ngx_open_file_cache.c:9:
src/core/ngx_open_file_cache.c: In function 'ngx_expire_old_cached_files':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_open_file_cache.c:1118:16: note: in expansion of macro 'ngx_queue_data'
         file = ngx_queue_data(q, ngx_cached_open_file_t, queue);
                ^~~~~~~~~~~~~~
src/core/ngx_open_file_cache.c: In function 'ngx_open_file_cache_rbtree_insert_value':
src/core/ngx_open_file_cache.c:1164:20: warning: cast increases required alignment of target type [-Wcast-align]
             file = (ngx_cached_open_file_t *) node;
                    ^
src/core/ngx_open_file_cache.c:1165:25: warning: cast increases required alignment of target type [-Wcast-align]
             file_temp = (ngx_cached_open_file_t *) temp;
                         ^
src/core/ngx_open_file_cache.c: In function 'ngx_open_file_lookup':
src/core/ngx_open_file_cache.c:1211:16: warning: cast increases required alignment of target type [-Wcast-align]
         file = (ngx_cached_open_file_t *) node;
                ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_proxy_protocol.o \
	src/core/ngx_proxy_protocol.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_syslog.o \
	src/core/ngx_syslog.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event.o \
	src/event/ngx_event.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_timer.o \
	src/event/ngx_event_timer.c
src/core/ngx_syslog.c:24:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
     ^~~~~~
src/core/ngx_syslog.c:24:13: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
             ^~~~~~
src/core/ngx_syslog.c:24:21: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                     ^~~~~~
src/core/ngx_syslog.c:24:29: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                             ^~~~~~~~
src/core/ngx_syslog.c:24:39: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                       ^~~~~~
src/core/ngx_syslog.c:24:47: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                               ^~~~~~~~
src/core/ngx_syslog.c:24:57: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                                         ^~~~~
src/core/ngx_syslog.c:24:64: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                                                ^~~~~~
src/core/ngx_syslog.c:24:72: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                                                        ^~~~~~
src/core/ngx_syslog.c:25:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
     ^~~~~~~
src/core/ngx_syslog.c:25:14: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
              ^~~~~~~~~~
src/core/ngx_syslog.c:25:26: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                          ^~~~~
src/core/ngx_syslog.c:25:33: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                 ^~~~~
src/core/ngx_syslog.c:25:40: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                        ^~~~~~~
src/core/ngx_syslog.c:25:49: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                                 ^~~~~~~
src/core/ngx_syslog.c:25:58: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                                          ^~~~~~
src/core/ngx_syslog.c:25:66: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                                                  ^~~~~~~~
src/core/ngx_syslog.c:26:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
     ^~~~~~~~
src/core/ngx_syslog.c:26:15: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
               ^~~~~~~~
src/core/ngx_syslog.c:26:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                         ^~~~~~~~
src/core/ngx_syslog.c:26:35: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                                   ^~~~~~~~
src/core/ngx_syslog.c:26:45: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                                             ^~~~~~~~
src/core/ngx_syslog.c:26:55: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                                                       ^~~~~~~~
src/core/ngx_syslog.c:26:65: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                                                                 ^~~~~~~~
src/core/ngx_syslog.c:32:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
     ^~~~~~~
src/core/ngx_syslog.c:32:14: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
              ^~~~~~~
src/core/ngx_syslog.c:32:23: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                       ^~~~~~
src/core/ngx_syslog.c:32:31: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                               ^~~~~~~
src/core/ngx_syslog.c:32:40: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                                        ^~~~~~
src/core/ngx_syslog.c:32:48: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                                                ^~~~~~~~
src/core/ngx_syslog.c:32:58: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                                                          ^~~~~~
src/core/ngx_syslog.c:32:66: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                                                                  ^~~~~~~
src/event/ngx_event.c: In function 'ngx_event_module_init':
src/event/ngx_event.c:442:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/event/ngx_event.c:513:28: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_accept_mutex_ptr = (ngx_atomic_t *) shared;
                            ^
src/event/ngx_event.c:516:45: warning: cast increases required alignment of target type [-Wcast-align]
     if (ngx_shmtx_create(&ngx_accept_mutex, (ngx_shmtx_sh_t *) shared,
                                             ^
src/event/ngx_event.c:523:30: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_connection_counter = (ngx_atomic_t *) (shared + 1 * cl);
                              ^
src/event/ngx_event.c:531:23: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_temp_number = (ngx_atomic_t *) (shared + 2 * cl);
                       ^
src/event/ngx_event.c:539:25: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_stat_accepted = (ngx_atomic_t *) (shared + 3 * cl);
                         ^
src/event/ngx_event.c:540:24: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_stat_handled = (ngx_atomic_t *) (shared + 4 * cl);
                        ^
src/event/ngx_event.c:541:25: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_stat_requests = (ngx_atomic_t *) (shared + 5 * cl);
                         ^
src/event/ngx_event.c:542:23: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_stat_active = (ngx_atomic_t *) (shared + 6 * cl);
                       ^
src/event/ngx_event.c:543:24: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_stat_reading = (ngx_atomic_t *) (shared + 7 * cl);
                        ^
src/event/ngx_event.c:544:24: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_stat_writing = (ngx_atomic_t *) (shared + 8 * cl);
                        ^
src/event/ngx_event.c:545:24: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_stat_waiting = (ngx_atomic_t *) (shared + 9 * cl);
                        ^
src/event/ngx_event.c: In function 'ngx_event_process_init':
src/event/ngx_event.c:579:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/event/ngx_event.c: In function 'ngx_send_lowat':
src/event/ngx_event.c:894:30: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                              "setsockopt(SO_SNDLOWAT) failed");
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/event/ngx_event.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/event/ngx_event.c: In function 'ngx_events_block':
src/event/ngx_event.c:914:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/event/ngx_event.c: In function 'ngx_event_connections':
src/event/ngx_event.c:990:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/event/ngx_event.c: In function 'ngx_event_use':
src/event/ngx_event.c:1019:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_posted.o \
	src/event/ngx_event_posted.c
src/event/ngx_event_timer.c: In function 'ngx_event_expire_timers':
src/event/ngx_event_timer.c:76:14: warning: cast increases required alignment of target type [-Wcast-align]
         ev = (ngx_event_t *) ((char *) node - offsetof(ngx_event_t, timer));
              ^
src/event/ngx_event_timer.c: In function 'ngx_event_cancel_timers':
src/event/ngx_event_timer.c:116:14: warning: cast increases required alignment of target type [-Wcast-align]
         ev = (ngx_event_t *) ((char *) node - offsetof(ngx_event_t, timer));
              ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_accept.o \
	src/event/ngx_event_accept.c
In file included from src/core/ngx_core.h:62:0,
                 from src/event/ngx_event_posted.c:9:
src/event/ngx_event_posted.c: In function 'ngx_event_process_posted':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/event/ngx_event_posted.c:26:14: note: in expansion of macro 'ngx_queue_data'
         ev = ngx_queue_data(q, ngx_event_t, queue);
              ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_connect.o \
	src/event/ngx_event_connect.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_pipe.o \
	src/event/ngx_event_pipe.c
src/event/ngx_event_accept.c: In function 'ngx_event_recvmsg':
src/event/ngx_event_accept.c:524:27: warning: cast increases required alignment of target type [-Wcast-align]
                     pkt = (struct in_pktinfo *) CMSG_DATA(cmsg);
                           ^
src/event/ngx_event_accept.c:524:35: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
                     pkt = (struct in_pktinfo *) CMSG_DATA(cmsg);
                                   ^~~~~~~~~~
src/event/ngx_event_accept.c:525:27: warning: cast increases required alignment of target type [-Wcast-align]
                     sin = (struct sockaddr_in *) sockaddr;
                           ^
src/event/ngx_event_accept.c:542:28: warning: cast increases required alignment of target type [-Wcast-align]
                     pkt6 = (struct in6_pktinfo *) CMSG_DATA(cmsg);
                            ^
src/event/ngx_event_accept.c:542:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
                     pkt6 = (struct in6_pktinfo *) CMSG_DATA(cmsg);
                                    ^~~~~~~~~~~
src/event/ngx_event_accept.c:543:28: warning: cast increases required alignment of target type [-Wcast-align]
                     sin6 = (struct sockaddr_in6 *) sockaddr;
                            ^
src/event/ngx_event_pipe.c: In function 'ngx_event_pipe':
src/event/ngx_event_pipe.c:31:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             p->log->action = "sending to client";
                            ^
src/event/ngx_event_pipe.c:47:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p->log->action = "reading upstream";
                        ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_time.o \
	src/os/unix/ngx_time.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_errno.o \
	src/os/unix/ngx_errno.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_alloc.o \
	src/os/unix/ngx_alloc.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_files.o \
	src/os/unix/ngx_files.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_socket.o \
	src/os/unix/ngx_socket.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_recv.o \
	src/os/unix/ngx_recv.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_readv_chain.o \
	src/os/unix/ngx_readv_chain.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_udp_recv.o \
	src/os/unix/ngx_udp_recv.c
src/os/unix/ngx_recv.c: In function 'ngx_unix_recv':
src/os/unix/ngx_recv.c:154:46: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             n = ngx_connection_error(c, err, "recv() failed");
                                              ^~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_recv.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_send.o \
	src/os/unix/ngx_send.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_writev_chain.o \
	src/os/unix/ngx_writev_chain.c
src/os/unix/ngx_readv_chain.c: In function 'ngx_readv_chain':
src/os/unix/ngx_readv_chain.c:201:46: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             n = ngx_connection_error(c, err, "readv() failed");
                                              ^~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_readv_chain.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/os/unix/ngx_udp_recv.c: In function 'ngx_udp_unix_recv':
src/os/unix/ngx_udp_recv.c:59:46: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             n = ngx_connection_error(c, err, "recv() failed");
                                              ^~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_udp_recv.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_udp_send.o \
	src/os/unix/ngx_udp_send.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_udp_sendmsg_chain.o \
	src/os/unix/ngx_udp_sendmsg_chain.c
src/os/unix/ngx_send.c: In function 'ngx_unix_send':
src/os/unix/ngx_send.c:69:49: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             (void) ngx_connection_error(c, err, "send() failed");
                                                 ^~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_send.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/os/unix/ngx_writev_chain.c: In function 'ngx_writev':
src/os/unix/ngx_writev_chain.c:210:42: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_connection_error(c, err, "writev() failed");
                                          ^~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_writev_chain.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_channel.o \
	src/os/unix/ngx_channel.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_shmem.o \
	src/os/unix/ngx_shmem.c
src/os/unix/ngx_udp_sendmsg_chain.c: In function 'ngx_sendmsg':
src/os/unix/ngx_udp_sendmsg_chain.c:239:42: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_connection_error(c, err, "sendmsg() failed");
                                          ^~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_udp_sendmsg_chain.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/os/unix/ngx_udp_send.c: In function 'ngx_udp_unix_send':
src/os/unix/ngx_udp_send.c:32:51: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 (void) ngx_connection_error(c, 0, "sendto() incomplete");
                                                   ^~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_udp_send.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/os/unix/ngx_udp_send.c:52:49: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             (void) ngx_connection_error(c, err, "sendto() failed");
                                                 ^~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_udp_send.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_process.o \
	src/os/unix/ngx_process.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_daemon.o \
	src/os/unix/ngx_daemon.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_setaffinity.o \
	src/os/unix/ngx_setaffinity.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_setproctitle.o \
	src/os/unix/ngx_setproctitle.c
src/os/unix/ngx_process.c:41:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_RECONFIGURE_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:42:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "reload",
       ^~~~~~~~
src/os/unix/ngx_process.c:46:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_REOPEN_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:47:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "reopen",
       ^~~~~~~~
src/os/unix/ngx_process.c:51:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_NOACCEPT_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:52:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "",
       ^~
src/os/unix/ngx_process.c:56:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_TERMINATE_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:57:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "stop",
       ^~~~~~
src/os/unix/ngx_process.c:61:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_SHUTDOWN_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:62:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "quit",
       ^~~~~~
src/os/unix/ngx_process.c:66:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_CHANGEBIN_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:67:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "",
       ^~
src/os/unix/ngx_process.c:70:16: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGALRM, "SIGALRM", "", ngx_signal_handler },
                ^~~~~~~~~
src/os/unix/ngx_process.c:70:27: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGALRM, "SIGALRM", "", ngx_signal_handler },
                           ^~
src/os/unix/ngx_process.c:72:15: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGINT, "SIGINT", "", ngx_signal_handler },
               ^~~~~~~~
src/os/unix/ngx_process.c:72:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGINT, "SIGINT", "", ngx_signal_handler },
                         ^~
src/os/unix/ngx_process.c:74:14: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGIO, "SIGIO", "", ngx_signal_handler },
              ^~~~~~~
src/os/unix/ngx_process.c:74:23: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGIO, "SIGIO", "", ngx_signal_handler },
                       ^~
src/os/unix/ngx_process.c:76:16: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGCHLD, "SIGCHLD", "", ngx_signal_handler },
                ^~~~~~~~~
src/os/unix/ngx_process.c:76:27: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGCHLD, "SIGCHLD", "", ngx_signal_handler },
                           ^~
src/os/unix/ngx_process.c:78:15: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGSYS, "SIGSYS, SIG_IGN", "", SIG_IGN },
               ^~~~~~~~~~~~~~~~~
src/os/unix/ngx_process.c:78:34: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGSYS, "SIGSYS, SIG_IGN", "", SIG_IGN },
                                  ^~
src/os/unix/ngx_process.c:80:16: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGPIPE, "SIGPIPE, SIG_IGN", "", SIG_IGN },
                ^~~~~~~~~~~~~~~~~~
src/os/unix/ngx_process.c:80:36: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGPIPE, "SIGPIPE, SIG_IGN", "", SIG_IGN },
                                    ^~
src/os/unix/ngx_process.c:82:16: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { 0, NULL, "", NULL }
                ^~
src/os/unix/ngx_process.c: In function 'ngx_signal_handler':
src/os/unix/ngx_process.c:329:12: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     action = "";
            ^
src/os/unix/ngx_process.c:339:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", shutting down";
                    ^
src/os/unix/ngx_process.c:345:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", exiting";
                    ^
src/os/unix/ngx_process.c:351:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 action = ", stop accepting connections";
                        ^
src/os/unix/ngx_process.c:357:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reconfiguring";
                    ^
src/os/unix/ngx_process.c:362:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reopening logs";
                    ^
src/os/unix/ngx_process.c:375:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 action = ", ignoring";
                        ^
src/os/unix/ngx_process.c:381:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", changing binary";
                    ^
src/os/unix/ngx_process.c:410:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", shutting down";
                    ^
src/os/unix/ngx_process.c:416:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", exiting";
                    ^
src/os/unix/ngx_process.c:421:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reopening logs";
                    ^
src/os/unix/ngx_process.c:427:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", ignoring";
                    ^
src/os/unix/ngx_process.c: In function 'ngx_process_get_status':
src/os/unix/ngx_process.c:504:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         process = "unknown process";
                 ^
src/os/unix/ngx_process.c: In function 'ngx_unlock_mutexes':
src/os/unix/ngx_process.c:582:14: warning: cast increases required alignment of target type [-Wcast-align]
         sp = (ngx_slab_pool_t *) shm_zone[i].shm.addr;
              ^
src/os/unix/ngx_process.c: In function 'ngx_debug_point':
src/os/unix/ngx_process.c:598:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(ngx_cycle->conf_ctx,
           ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_posix_init.o \
	src/os/unix/ngx_posix_init.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_user.o \
	src/os/unix/ngx_user.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_dlopen.o \
	src/os/unix/ngx_dlopen.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_process_cycle.o \
	src/os/unix/ngx_process_cycle.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_linux_init.o \
	src/os/unix/ngx_linux_init.c
src/os/unix/ngx_dlopen.c: In function 'ngx_dlerror':
src/os/unix/ngx_dlopen.c:22:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "";
                ^~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/modules/ngx_epoll_module.o \
	src/event/modules/ngx_epoll_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_linux_sendfile_chain.o \
	src/os/unix/ngx_linux_sendfile_chain.c
src/os/unix/ngx_process_cycle.c:59:40: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_cache_manager_process_handler, "cache manager process", 0
                                        ^~~~~~~~~~~~~~~~~~~~~~~
src/os/unix/ngx_process_cycle.c:63:39: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_cache_loader_process_handler, "cache loader process", 60000
                                       ^~~~~~~~~~~~~~~~~~~~~~
src/os/unix/ngx_process_cycle.c: In function 'ngx_master_process_cycle':
src/os/unix/ngx_process_cycle.c:128:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/os/unix/ngx_process_cycle.c:241:19: warning: cast increases required alignment of target type [-Wcast-align]
             ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx,
                   ^
src/os/unix/ngx_process_cycle.c: In function 'ngx_start_worker_processes':
src/os/unix/ngx_process_cycle.c:359:50: warning: passing argument 4 of 'ngx_spawn_process' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           (void *) (intptr_t) i, "worker process", type);
                                                  ^~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:53:0,
                 from src/os/unix/ngx_process_cycle.c:9:
src/os/unix/ngx_process.h:63:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_pid_t ngx_spawn_process(ngx_cycle_t *cycle,
           ^~~~~~~~~~~~~~~~~
src/os/unix/ngx_process_cycle.c: In function 'ngx_start_cache_manager_processes':
src/os/unix/ngx_process_cycle.c:397:47: warning: passing argument 4 of 'ngx_spawn_process' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       &ngx_cache_manager_ctx, "cache manager process",
                                               ^~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:53:0,
                 from src/os/unix/ngx_process_cycle.c:9:
src/os/unix/ngx_process.h:63:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_pid_t ngx_spawn_process(ngx_cycle_t *cycle,
           ^~~~~~~~~~~~~~~~~
src/os/unix/ngx_process_cycle.c:414:46: warning: passing argument 4 of 'ngx_spawn_process' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       &ngx_cache_loader_ctx, "cache loader process",
                                              ^~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:53:0,
                 from src/os/unix/ngx_process_cycle.c:9:
src/os/unix/ngx_process.h:63:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_pid_t ngx_spawn_process(ngx_cycle_t *cycle,
           ^~~~~~~~~~~~~~~~~
src/os/unix/ngx_process_cycle.c: In function 'ngx_reap_children':
src/os/unix/ngx_process_cycle.c:647:23: warning: cast increases required alignment of target type [-Wcast-align]
                 ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx,
                       ^
src/os/unix/ngx_process_cycle.c: In function 'ngx_worker_process_cycle':
src/os/unix/ngx_process_cycle.c:736:22: warning: passing argument 1 of 'ngx_setproctitle' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_setproctitle("worker process");
                      ^~~~~~~~~~~~~~~~
In file included from src/os/unix/ngx_process.h:13:0,
                 from src/core/ngx_core.h:53,
                 from src/os/unix/ngx_process_cycle.c:9:
src/os/unix/ngx_setproctitle.h:38:6: note: expected 'char *' but argument is of type 'const char *'
 void ngx_setproctitle(char *title);
      ^~~~~~~~~~~~~~~~
src/os/unix/ngx_process_cycle.c:765:30: warning: passing argument 1 of 'ngx_setproctitle' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_setproctitle("worker process is shutting down");
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/os/unix/ngx_process.h:13:0,
                 from src/core/ngx_core.h:53,
                 from src/os/unix/ngx_process_cycle.c:9:
src/os/unix/ngx_setproctitle.h:38:6: note: expected 'char *' but argument is of type 'const char *'
 void ngx_setproctitle(char *title);
      ^~~~~~~~~~~~~~~~
src/os/unix/ngx_process_cycle.c: In function 'ngx_worker_process_init':
src/os/unix/ngx_process_cycle.c:800:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_openssl.o \
	src/event/ngx_event_openssl.c
src/os/unix/ngx_linux_sendfile_chain.c: In function 'ngx_linux_sendfile_chain':
src/os/unix/ngx_linux_sendfile_chain.c:127:46: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                              "setsockopt(TCP_NODELAY) failed");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_linux_sendfile_chain.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:49:0,
                 from src/os/unix/ngx_linux_sendfile_chain.c:9:
src/os/unix/ngx_socket.h:46:28: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 #define ngx_tcp_nopush_n   "setsockopt(TCP_CORK)"
                            ^
src/os/unix/ngx_linux_sendfile_chain.c:152:46: note: in expansion of macro 'ngx_tcp_nopush_n'
                                              ngx_tcp_nopush_n " failed");
                                              ^~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_linux_sendfile_chain.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/os/unix/ngx_linux_sendfile_chain.c: In function 'ngx_linux_sendfile':
src/os/unix/ngx_linux_sendfile_chain.c:290:42: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_connection_error(c, err, "sendfile() failed");
                                          ^~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_linux_sendfile_chain.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_openssl_stapling.o \
	src/event/ngx_event_openssl_stapling.c
src/event/ngx_event_openssl.c: In function 'ngx_ssl_init':
src/event/ngx_event_openssl.c:160:46: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, log, 0, "SSL_get_ex_new_index() failed");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:168:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_get_ex_new_index() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:176:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_get_ex_new_index() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:184:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_get_ex_new_index() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:192:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_get_ex_new_index() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:199:46: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, log, 0, "X509_get_ex_new_index() failed");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:207:46: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, log, 0, "X509_get_ex_new_index() failed");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:214:46: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, log, 0, "X509_get_ex_new_index() failed");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_create':
src/event/ngx_event_openssl.c:228:51: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_EMERG, ssl->log, 0, "SSL_CTX_new() failed");
                                                   ^~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:234:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_set_ex_data() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:240:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_set_ex_data() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_certificate':
src/event/ngx_event_openssl.c:383:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "BIO_new_file(\"%s\") failed", cert->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:390:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "PEM_read_bio_X509_AUX(\"%s\") failed", cert->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:397:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_use_certificate(\"%s\") failed", cert->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:406:51: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_EMERG, ssl->log, 0, "X509_set_ex_data() failed");
                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:416:51: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_EMERG, ssl->log, 0, "X509_set_ex_data() failed");
                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:426:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_set_ex_data() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:451:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "PEM_read_bio_X509(\"%s\") failed", cert->data);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:466:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "SSL_CTX_add0_chain_cert(\"%s\") failed",
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:510:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "ENGINE_by_id(\"%s\") failed", p);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:520:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "ENGINE_load_private_key(\"%s\") failed", last);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:529:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "SSL_CTX_use_PrivateKey(\"%s\") failed", last);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:582:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_use_PrivateKey_file(\"%s\") failed", key->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_ciphers':
src/event/ngx_event_openssl.c:622:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_set_cipher_list(\"%V\") failed",
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_client_certificate':
src/event/ngx_event_openssl.c:662:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_load_verify_locations(\"%s\") failed",
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:678:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_load_client_CA_file(\"%s\") failed", cert->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_trusted_certificate':
src/event/ngx_event_openssl.c:713:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_load_verify_locations(\"%s\") failed",
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_regex.o \
	src/core/ngx_regex.c
src/event/ngx_event_openssl.c: In function 'ngx_ssl_crl':
src/event/ngx_event_openssl.c:747:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_get_cert_store() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:755:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "X509_STORE_add_lookup() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:763:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "X509_LOOKUP_load_file(\"%s\") failed", crl->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_dhparam':
src/event/ngx_event_openssl.c:1041:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "BIO_new_file(\"%s\") failed", file->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:1048:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "PEM_read_bio_DHparams(\"%s\") failed", file->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_ecdh_curve':
src/event/ngx_event_openssl.c:1102:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_set1_curves_list(\"%s\") failed", name->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_create_connection':
src/event/ngx_event_openssl.c:1164:49: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "SSL_new() failed");
                                                 ^~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:1169:49: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "SSL_set_fd() failed");
                                                 ^~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:1181:49: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "SSL_set_ex_data() failed");
                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_set_session':
src/event/ngx_event_openssl.c:1196:53: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "SSL_set_session() failed");
                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_handshake':
src/event/ngx_event_openssl.c:1339:30: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                              "peer closed connection in SSL handshake");
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/event/ngx_event_openssl.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:1346:46: warning: passing argument 4 of 'ngx_ssl_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_ssl_connection_error(c, sslerr, err, "SSL_do_handshake() failed");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:32:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_ssl_connection_error(ngx_connection_t *c, int sslerr,
             ^~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_handle_recv':
src/event/ngx_event_openssl.c:1529:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "ignoring stale global SSL error");
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:1601:46: warning: passing argument 4 of 'ngx_ssl_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_ssl_connection_error(c, sslerr, err, "SSL_read() failed");
                                              ^~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:32:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_ssl_connection_error(ngx_connection_t *c, int sslerr,
             ^~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_write':
src/event/ngx_event_openssl.c:1854:46: warning: passing argument 4 of 'ngx_ssl_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_ssl_connection_error(c, sslerr, err, "SSL_write() failed");
                                              ^~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:32:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_ssl_connection_error(ngx_connection_t *c, int sslerr,
             ^~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_shutdown':
src/event/ngx_event_openssl.c:1968:46: warning: passing argument 4 of 'ngx_ssl_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_ssl_connection_error(c, sslerr, err, "SSL_shutdown() failed");
                                              ^~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:32:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_ssl_connection_error(ngx_connection_t *c, int sslerr,
             ^~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_clear_error':
src/event/ngx_event_openssl.c:2131:46: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, log, 0, "ignoring stale global SSL error");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_session_cache':
src/event/ngx_event_openssl.c:2256:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "SSL_CTX_set_ex_data() failed");
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_session_id_context':
src/event/ngx_event_openssl.c:2288:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "EVP_DigestInit_ex() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2294:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "EVP_DigestUpdate() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2304:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "X509_digest() failed");
                           ^~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2310:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "EVP_DigestUpdate() failed");
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2325:31: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                               "X509_NAME_digest() failed");
                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2331:31: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                               "EVP_DigestUpdate() failed");
                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2339:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "EVP_DigestUpdate() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2347:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_set_session_id_context() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_session_cache_init':
src/event/ngx_event_openssl.c:2373:14: warning: cast increases required alignment of target type [-Wcast-align]
     shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
              ^
src/event/ngx_event_openssl.c: In function 'ngx_ssl_new_session':
src/event/ngx_event_openssl.c:2458:14: warning: cast increases required alignment of target type [-Wcast-align]
     shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
              ^
src/event/ngx_event_openssl.c: In function 'ngx_ssl_get_cached_session':
src/event/ngx_event_openssl.c:2612:14: warning: cast increases required alignment of target type [-Wcast-align]
     shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
              ^
src/event/ngx_event_openssl.c: In function 'ngx_ssl_remove_session':
src/event/ngx_event_openssl.c:2723:14: warning: cast increases required alignment of target type [-Wcast-align]
     shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
              ^
In file included from src/core/ngx_core.h:62:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.c: In function 'ngx_ssl_expire_sessions':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/event/ngx_event_openssl.c:2790:19: note: in expansion of macro 'ngx_queue_data'
         sess_id = ngx_queue_data(q, ngx_ssl_sess_id_t, queue);
                   ^~~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_session_ticket_keys':
src/event/ngx_event_openssl.c:2954:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_set_ex_data() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_session_ticket_key_callback':
src/event/ngx_event_openssl.c:3033:53: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "RAND_bytes() failed");
                                                     ^~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:3039:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "EVP_EncryptInit_ex() failed");
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:3045:53: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "HMAC_Init_ex() failed");
                                                     ^~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:3089:53: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "HMAC_Init_ex() failed");
                                                     ^~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:3098:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "EVP_DecryptInit_ex() failed");
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_get_raw_certificate':
src/event/ngx_event_openssl.c:3566:49: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "BIO_new() failed");
                                                 ^~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:3572:49: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "PEM_write_bio_X509() failed");
                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_openssl_engine':
src/event/ngx_event_openssl.c:4143:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:4154:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "ENGINE_by_id(\"%V\") failed", &value[1]);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:4160:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "ENGINE_set_default(\"%V\", ENGINE_METHOD_ALL) failed",
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_stapling_certificate':
src/event/ngx_event_openssl_stapling.c:172:51: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_EMERG, ssl->log, 0, "X509_set_ex_data() failed");
                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_stapling_file':
src/event/ngx_event_openssl_stapling.c:233:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "BIO_new_file(\"%s\") failed", file->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:240:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "d2i_OCSP_RESPONSE_bio(\"%s\") failed", file->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:248:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "i2d_OCSP_RESPONSE(\"%s\") failed", file->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:261:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "i2d_OCSP_RESPONSE(\"%s\") failed", file->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_stapling_issuer':
src/event/ngx_event_openssl_stapling.c:334:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_get_cert_store() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:341:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "X509_STORE_CTX_new() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:347:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "X509_STORE_CTX_init() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:356:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "X509_STORE_CTX_get1_issuer() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_certificate_status_callback':
src/event/ngx_event_openssl_stapling.c:527:53: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "OPENSSL_malloc() failed");
                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_stapling_ocsp_handler':
src/event/ngx_event_openssl_stapling.c:621:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "d2i_OCSP_RESPONSE() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:637:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "OCSP_response_get1_basic() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:644:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_get_cert_store() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:665:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "OCSP_basic_verify() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:672:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "OCSP_cert_to_id() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:694:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "OCSP_check_validity() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_ocsp_start':
src/event/ngx_event_openssl_stapling.c:854:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "requesting certificate status";
                 ^
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_ocsp_create_request':
src/event/ngx_event_openssl_stapling.c:1216:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "OCSP_REQUEST_new() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:1223:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "OCSP_cert_to_id() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:1229:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "OCSP_request_add0_id() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:1237:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "i2d_OCSP_REQUEST() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:1251:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "i2d_OCSP_REQUEST() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:1293:13: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         p = (u_char *) ngx_escape_uri(p, base64.data, base64.len,
             ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http.o \
	src/http/ngx_http.c
src/core/ngx_regex.c: In function 'ngx_regex_compile':
src/core/ngx_regex.c:149:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "pcre_fullinfo(\"%V\", PCRE_INFO_CAPTURECOUNT) failed: %d";
           ^
src/core/ngx_regex.c:159:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "pcre_fullinfo(\"%V\", PCRE_INFO_NAMECOUNT) failed: %d";
           ^
src/core/ngx_regex.c:169:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "pcre_fullinfo(\"%V\", PCRE_INFO_NAMEENTRYSIZE) failed: %d";
           ^
src/core/ngx_regex.c:175:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "pcre_fullinfo(\"%V\", PCRE_INFO_NAMETABLE) failed: %d";
           ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_core_module.o \
	src/http/ngx_http_core_module.c
src/http/ngx_http.c: In function 'ngx_http_block':
src/http/ngx_http.c:132:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http.c: In function 'ngx_http_init_headers_in_hash':
src/http/ngx_http.c:432:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "headers_in_hash";
               ^
src/http/ngx_http.c: In function 'ngx_http_server_names':
src/http/ngx_http.c:1493:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "server_names_hash";
               ^
src/http/ngx_http.c: In function 'ngx_http_types_slot':
src/http/ngx_http.c:1922:13: warning: cast increases required alignment of target type [-Wcast-align]
     types = (ngx_array_t **) (p + cmd->offset);
             ^
src/http/ngx_http.c: In function 'ngx_http_merge_types':
src/http/ngx_http.c:2006:19: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         hash.name = "test_types_hash";
                   ^
src/http/ngx_http.c:2036:19: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         hash.name = "test_types_hash";
                   ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_special_response.o \
	src/http/ngx_http_special_response.c
src/http/ngx_http_core_module.c: In function 'ngx_http_core_try_files_phase':
src/http/ngx_http_core_module.c:1198:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/ngx_http_core_module.c:1199:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) e.ip;
                          ^
src/http/ngx_http_core_module.c:1243:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/ngx_http_core_module.c:1244:25: warning: cast increases required alignment of target type [-Wcast-align]
                 code = *(ngx_http_script_code_pt *) e.ip;
                         ^
src/http/ngx_http_core_module.c: In function 'ngx_http_gzip_accept_encoding':
src/http/ngx_http_core_module.c:2308:36: warning: passing argument 2 of 'ngx_strcasestrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = ngx_strcasestrn(start, "gzip", 4 - 1);
                                    ^~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_core_module.c:9:
src/core/ngx_string.h:163:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strcasestrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_merge_loc_conf':
src/http/ngx_http_core_module.c:3674:25: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         types_hash.name = "types_hash";
                         ^
src/http/ngx_http_core_module.c:3716:25: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         types_hash.name = "types_hash";
                         ^
src/http/ngx_http_core_module.c: In function 'ngx_http_core_limit_except':
src/http/ngx_http_core_module.c:4510:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "duplicate";
                ^~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_set_aio':
src/http/ngx_http_core_module.c:4602:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:4700:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "invalid value";
            ^~~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_directio':
src/http/ngx_http_core_module.c:4712:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:4724:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_try_files':
src/http/ngx_http_core_module.c:4862:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_open_file_cache':
src/http/ngx_http_core_module.c:4943:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_keepalive':
src/http/ngx_http_core_module.c:5027:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:5035:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:5045:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_internal':
src/http/ngx_http_core_module.c:5058:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_resolver':
src/http/ngx_http_core_module.c:5075:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_disable_symlinks':
src/http/ngx_http_core_module.c:5203:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_special_response.c: In function 'ngx_http_send_refresh':
src/http/ngx_http_special_response.c:788:13: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         p = (u_char *) ngx_escape_uri(p, location, len, NGX_ESCAPE_REFRESH);
             ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_request.o \
	src/http/ngx_http_request.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_parse.o \
	src/http/ngx_http_parse.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_log_module.o \
	src/http/modules/ngx_http_log_module.c
src/http/ngx_http_request.c:70:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "client sent invalid method",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c:73:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "client sent invalid request",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c:76:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "client sent invalid method in HTTP/0.9 request"
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c: In function 'ngx_http_init_connection':
src/http/ngx_http_request.c:242:20: warning: cast increases required alignment of target type [-Wcast-align]
             sin6 = (struct sockaddr_in6 *) c->local_sockaddr;
                    ^
src/http/ngx_http_request.c:260:19: warning: cast increases required alignment of target type [-Wcast-align]
             sin = (struct sockaddr_in *) c->local_sockaddr;
                   ^
src/http/ngx_http_request.c:311:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "waiting for request";
                    ^
src/http/ngx_http_request.c:333:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "SSL handshaking";
                        ^
src/http/ngx_http_request.c:352:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "reading PROXY protocol";
                        ^
src/http/ngx_http_request.c: In function 'ngx_http_wait_request_handler':
src/http/ngx_http_request.c:484:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             c->log->action = "waiting for request";
                            ^
src/http/ngx_http_request.c:492:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "reading client request line";
                    ^
src/http/ngx_http_request.c: In function 'ngx_http_ssl_handshake':
src/http/ngx_http_request.c:673:38: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_connection_error(c, err, "recv() failed");
                                      ^~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c:696:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "SSL handshaking";
                        ^
src/http/ngx_http_request.c:743:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "waiting for request";
                        ^
src/http/ngx_http_request.c: In function 'ngx_http_ssl_handshake_handler':
src/http/ngx_http_request.c:804:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "waiting for request";
                        ^
src/http/ngx_http_request.c: In function 'ngx_http_process_request_line':
src/http/ngx_http_request.c:1023:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             c->log->action = "reading client request headers";
                            ^
src/http/ngx_http_request.c: In function 'ngx_http_read_request_header':
src/http/ngx_http_request.c:1414:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "reading client request headers";
                        ^
src/http/ngx_http_request.c: In function 'ngx_http_process_header_line':
src/http/ngx_http_request.c:1576:10: warning: cast increases required alignment of target type [-Wcast-align]
     ph = (ngx_table_elt_t **) ((char *) &r->headers_in + offset);
          ^
src/http/ngx_http_request.c: In function 'ngx_http_process_unique_header_line':
src/http/ngx_http_request.c:1592:10: warning: cast increases required alignment of target type [-Wcast-align]
     ph = (ngx_table_elt_t **) ((char *) &r->headers_in + offset);
          ^
src/http/ngx_http_request.c: In function 'ngx_http_process_connection':
src/http/ngx_http_request.c:1655:40: warning: passing argument 2 of 'ngx_strcasestrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     if (ngx_strcasestrn(h->value.data, "close", 5 - 1)) {
                                        ^~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:163:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strcasestrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~~~~~
src/http/ngx_http_request.c:1658:47: warning: passing argument 2 of 'ngx_strcasestrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     } else if (ngx_strcasestrn(h->value.data, "keep-alive", 10 - 1)) {
                                               ^~~~~~~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:163:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strcasestrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~~~~~
src/http/ngx_http_request.c: In function 'ngx_http_process_user_agent':
src/http/ngx_http_request.c:1682:36: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     msie = ngx_strstrn(user_agent, "MSIE ", 5 - 1);
                                    ^~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c:1696:43: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 if (ngx_strstrn(msie + 8, "SV1", 3 - 1) == NULL) {
                                           ^~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c:1711:33: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     if (ngx_strstrn(user_agent, "Opera", 5 - 1)) {
                                 ^~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c:1719:37: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         if (ngx_strstrn(user_agent, "Gecko/", 6 - 1)) {
                                     ^~~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c:1722:44: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         } else if (ngx_strstrn(user_agent, "Chrome/", 7 - 1)) {
                                            ^~~~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c:1725:44: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         } else if (ngx_strstrn(user_agent, "Safari/", 7 - 1)
                                            ^~~~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c:1726:47: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                    && ngx_strstrn(user_agent, "Mac OS X", 8 - 1))
                                               ^~~~~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c:1730:44: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         } else if (ngx_strstrn(user_agent, "Konqueror", 9 - 1)) {
                                            ^~~~~~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c: In function 'ngx_http_process_multi_header_lines':
src/http/ngx_http_request.c:1746:15: warning: cast increases required alignment of target type [-Wcast-align]
     headers = (ngx_array_t *) ((char *) &r->headers_in + offset);
               ^
src/http/ngx_http_request.c: In function 'ngx_http_set_keepalive':
src/http/ngx_http_request.c:2858:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "closing request";
                    ^
src/http/ngx_http_request.c:2920:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "reading client pipelined request line";
                        ^
src/http/ngx_http_request.c:3006:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "keepalive";
                    ^
In file included from src/core/ngx_core.h:49:0,
                 from src/http/ngx_http_request.c:9:
src/os/unix/ngx_socket.h:47:28: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 #define ngx_tcp_push_n     "setsockopt(!TCP_CORK)"
                            ^
src/http/ngx_http_request.c:3010:55: note: in expansion of macro 'ngx_tcp_push_n'
             ngx_connection_error(c, ngx_socket_errno, ngx_tcp_push_n " failed");
                                                       ^~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c:3038:34: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                  "setsockopt(TCP_NODELAY) failed");
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c: In function 'ngx_http_keepalive_handler':
src/http/ngx_http_request.c:3174:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "reading client request line";
                    ^
In file included from src/core/ngx_core.h:49:0,
                 from src/http/ngx_http_request.c:9:
src/http/ngx_http_request.c: In function 'ngx_http_set_lingering_close':
src/os/unix/ngx_socket.h:58:32: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 #define ngx_shutdown_socket_n  "shutdown()"
                                ^
src/http/ngx_http_request.c:3229:30: note: in expansion of macro 'ngx_shutdown_socket_n'
                              ngx_shutdown_socket_n " failed");
                              ^~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c: In function 'ngx_http_free_request':
src/http/ngx_http_request.c:3464:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "logging request";
                 ^
src/http/ngx_http_request.c:3468:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "closing request";
                 ^
src/http/ngx_http_request.c: In function 'ngx_http_log_error_handler':
src/http/ngx_http_request.c:3631:23: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         uri_separator = "";
                       ^
src/http/ngx_http_request.c:3635:27: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             uri_separator = ":";
                           ^
src/http/modules/ngx_http_log_module.c: In function 'ngx_http_log_variable':
src/http/modules/ngx_http_log_module.c:978:16: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         return (u_char *) ngx_http_log_escape(buf, value->data, value->len);
                ^
src/http/modules/ngx_http_log_module.c: In function 'ngx_http_log_json_variable':
src/http/modules/ngx_http_log_module.c:1079:16: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         return (u_char *) ngx_escape_json(buf, value->data, value->len);
                ^
src/http/modules/ngx_http_log_module.c: In function 'ngx_http_log_open_file_cache':
src/http/modules/ngx_http_log_module.c:1726:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_request_body.o \
	src/http/ngx_http_request_body.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_variables.o \
	src/http/ngx_http_variables.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_script.o \
	src/http/ngx_http_script.c
src/http/ngx_http_request_body.c: In function 'ngx_http_write_request_body':
src/http/ngx_http_request_body.c:454:18: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         tf->warn = "a client request body is buffered to a temporary file";
                  ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_request':
src/http/ngx_http_variables.c:689:9: warning: cast increases required alignment of target type [-Wcast-align]
     s = (ngx_str_t *) ((char *) r + data);
         ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_request_get_size':
src/http/ngx_http_variables.c:729:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (size_t *) ((char *) r + data);
          ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_request_set_size':
src/http/ngx_http_variables.c:763:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (ssize_t *) ((char *) r + data);
          ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_header':
src/http/ngx_http_variables.c:777:10: warning: cast increases required alignment of target type [-Wcast-align]
     h = *(ngx_table_elt_t **) ((char *) r + data);
          ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_headers_internal':
src/http/ngx_http_variables.c:820:9: warning: cast increases required alignment of target type [-Wcast-align]
     a = (ngx_array_t *) ((char *) r + data);
         ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_binary_remote_addr':
src/http/ngx_http_variables.c:1183:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) r->connection->sockaddr;
                ^
src/http/ngx_http_variables.c:1195:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) r->connection->sockaddr;
               ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_upstream.o \
	src/http/ngx_http_upstream.c
src/http/ngx_http_variables.c: In function 'ngx_http_variable_sent_connection':
src/http/ngx_http_variables.c:1857:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "upgrade";
           ^
src/http/ngx_http_variables.c:1861:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "keep-alive";
           ^
src/http/ngx_http_variables.c:1865:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "close";
           ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_request_id':
src/http/ngx_http_variables.c:2114:55: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_ssl_error(NGX_LOG_ERR, r->connection->log, 0, "RAND_bytes() failed");
                                                       ^~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/http/ngx_http_variables.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/http/ngx_http_variables.c: In function 'ngx_http_variables_init_vars':
src/http/ngx_http_variables.c:2675:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "variables_hash";
               ^
src/http/ngx_http_script.c: In function 'ngx_http_complex_value':
src/http/ngx_http_script.c:81:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) e.ip) {
             ^
src/http/ngx_http_script.c:82:18: warning: cast increases required alignment of target type [-Wcast-align]
         lcode = *(ngx_http_script_len_code_pt *) e.ip;
                  ^
src/http/ngx_http_script.c:96:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) e.ip) {
             ^
src/http/ngx_http_script.c:97:17: warning: cast increases required alignment of target type [-Wcast-align]
         code = *(ngx_http_script_code_pt *) e.ip;
                 ^
src/http/ngx_http_script.c: In function 'ngx_http_set_complex_value_slot':
src/http/ngx_http_script.c:220:10: warning: cast increases required alignment of target type [-Wcast-align]
     cv = (ngx_http_complex_value_t **) (p + cmd->offset);
          ^
src/http/ngx_http_script.c:223:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "duplicate";
                ^~~~~~~~~~~
src/http/ngx_http_script.c: In function 'ngx_http_set_predicate_slot':
src/http/ngx_http_script.c:285:9: warning: cast increases required alignment of target type [-Wcast-align]
     a = (ngx_array_t **) (p + cmd->offset);
         ^
src/http/ngx_http_script.c: In function 'ngx_http_script_run':
src/http/ngx_http_script.c:512:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) e.ip) {
             ^
src/http/ngx_http_script.c:513:18: warning: cast increases required alignment of target type [-Wcast-align]
         lcode = *(ngx_http_script_len_code_pt *) e.ip;
                  ^
src/http/ngx_http_script.c:527:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) e.ip) {
             ^
src/http/ngx_http_script.c:528:17: warning: cast increases required alignment of target type [-Wcast-align]
         code = *(ngx_http_script_code_pt *) e.ip;
                 ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_len_code':
src/http/ngx_http_script.c:729:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_copy_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_code':
src/http/ngx_http_script.c:743:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_copy_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_var_len_code':
src/http/ngx_http_script.c:810:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_var_code':
src/http/ngx_http_script.c:836:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_regex_start_code':
src/http/ngx_http_script.c:919:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_regex_code_t *) e->ip;
            ^
src/http/ngx_http_script.c:1038:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/ngx_http_script.c:1039:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/ngx_http_script.c: In function 'ngx_http_script_regex_end_code':
src/http/ngx_http_script.c:1072:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_regex_end_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_capture_len_code':
src/http/ngx_http_script.c:1215:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_copy_capture_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_capture_code':
src/http/ngx_http_script.c:1253:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_copy_capture_code_t *) e->ip;
            ^
src/http/ngx_http_script.c:1269:22: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
             e->pos = (u_char *) ngx_escape_uri(pos, &p[cap[n]],
                      ^
src/http/ngx_http_script.c: In function 'ngx_http_script_full_name_len_code':
src/http/ngx_http_script.c:1318:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_full_name_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_full_name_code':
src/http/ngx_http_script.c:1334:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_full_name_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_return_code':
src/http/ngx_http_script.c:1362:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_return_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_if_code':
src/http/ngx_http_script.c:1392:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_if_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_file_code':
src/http/ngx_http_script.c:1484:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_file_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_complex_value_code':
src/http/ngx_http_script.c:1615:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_complex_value_code_t *) e->ip;
            ^
src/http/ngx_http_script.c:1629:20: warning: cast increases required alignment of target type [-Wcast-align]
     for (len = 0; *(uintptr_t *) le.ip; len += lcode(&le)) {
                    ^
src/http/ngx_http_script.c:1630:18: warning: cast increases required alignment of target type [-Wcast-align]
         lcode = *(ngx_http_script_len_code_pt *) le.ip;
                  ^
src/http/ngx_http_script.c: In function 'ngx_http_script_value_code':
src/http/ngx_http_script.c:1654:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_value_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_set_var_code':
src/http/ngx_http_script.c:1674:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_var_set_handler_code':
src/http/ngx_http_script.c:1712:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_handler_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_var_code':
src/http/ngx_http_script.c:1731:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_code_t *) e->ip;
            ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_connect':
src/http/ngx_http_upstream.c:1402:32: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     r->connection->log->action = "connecting to upstream";
                                ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_ssl_init_connection':
src/http/ngx_http_upstream.c:1594:38: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                      "setsockopt(TCP_NODELAY) failed");
                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c:1604:32: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     r->connection->log->action = "SSL handshaking to upstream";
                                ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_ssl_name':
src/http/ngx_http_upstream.c:1766:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_set_tlsext_host_name(\"%s\") failed", name.data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/http/ngx_http_upstream.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_send_request':
src/http/ngx_http_upstream.c:1881:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "sending request to upstream";
                    ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_send_request_body':
src/http/ngx_http_upstream.c:1999:38: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                      "setsockopt(TCP_NODELAY) failed");
                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_header':
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_upstream_round_robin.o \
	src/http/ngx_http_upstream_round_robin.c
src/http/ngx_http_upstream.c:2137:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "reading response header from upstream";
                    ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_test_connect':
src/http/ngx_http_upstream.c:2519:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             c->log->action = "connecting to upstream";
                            ^
src/http/ngx_http_upstream.c:2520:49: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             (void) ngx_connection_error(c, err, "connect() failed");
                                                 ^~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_body_in_memory':
src/http/ngx_http_upstream.c:2689:48: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_connection_error(c, NGX_ETIMEDOUT, "upstream timed out");
                                                ^~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_send_response':
src/http/ngx_http_upstream.c:2843:38: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                      "setsockopt(TCP_NODELAY) failed");
                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c:3015:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p->temp_file->warn = "an upstream response is buffered "
                            ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_upgrade':
src/http/ngx_http_upstream.c:3117:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "proxying upgraded connection";
                    ^
src/http/ngx_http_upstream.c:3134:38: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                      "setsockopt(TCP_NODELAY) failed");
                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c:3150:38: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                      "setsockopt(TCP_NODELAY) failed");
                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_upgraded':
src/http/ngx_http_upstream.c:3228:48: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_connection_error(c, NGX_ETIMEDOUT, "client timed out");
                                                ^~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c:3234:48: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_connection_error(c, NGX_ETIMEDOUT, "upstream timed out");
                                                ^~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_non_buffered_downstream':
src/http/ngx_http_upstream.c:3398:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "sending to client";
                    ^
src/http/ngx_http_upstream.c:3402:48: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_connection_error(c, NGX_ETIMEDOUT, "client timed out");
                                                ^~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_non_buffered_upstream':
src/http/ngx_http_upstream.c:3422:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "reading upstream";
                    ^
src/http/ngx_http_upstream.c:3425:48: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_connection_error(c, NGX_ETIMEDOUT, "upstream timed out");
                                                ^~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_downstream':
src/http/ngx_http_upstream.c:3715:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "sending to client";
                    ^
src/http/ngx_http_upstream.c:3746:52: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_connection_error(c, NGX_ETIMEDOUT, "client timed out");
                                                    ^~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_upstream':
src/http/ngx_http_upstream.c:3788:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "reading upstream";
                    ^
src/http/ngx_http_upstream.c:3814:52: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_connection_error(c, NGX_ETIMEDOUT, "upstream timed out");
                                                    ^~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_finalize_request':
src/http/ngx_http_upstream.c:4292:32: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     r->connection->log->action = "sending to client";
                                ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_header_line':
src/http/ngx_http_upstream.c:4333:10: warning: cast increases required alignment of target type [-Wcast-align]
     ph = (ngx_table_elt_t **) ((char *) &r->upstream->headers_in + offset);
          ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_copy_header_line':
src/http/ngx_http_upstream.c:4773:14: warning: cast increases required alignment of target type [-Wcast-align]
         ph = (ngx_table_elt_t **) ((char *) &r->headers_out + offset);
              ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_copy_multi_header_lines':
src/http/ngx_http_upstream.c:4788:10: warning: cast increases required alignment of target type [-Wcast-align]
     pa = (ngx_array_t *) ((char *) &r->headers_out + offset);
          ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_rewrite_refresh':
src/http/ngx_http_upstream.c:4955:45: warning: passing argument 2 of 'ngx_strcasestrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = ngx_strcasestrn(ho->value.data, "url=", 4 - 1);
                                             ^~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_string.h:163:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strcasestrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_bind_set_slot':
src/http/ngx_http_upstream.c:5904:14: warning: cast increases required alignment of target type [-Wcast-align]
     plocal = (ngx_http_upstream_local_t **) (p + cmd->offset);
              ^
src/http/ngx_http_upstream.c:5907:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_param_set_slot':
src/http/ngx_http_upstream.c:6049:9: warning: cast increases required alignment of target type [-Wcast-align]
     a = (ngx_array_t **) (p + cmd->offset);
         ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_init_main_conf':
src/http/ngx_http_upstream.c:6276:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "upstream_headers_in_hash";
               ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_file_cache.o \
	src/http/ngx_http_file_cache.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_write_filter_module.o \
	src/http/ngx_http_write_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_header_filter_module.o \
	src/http/ngx_http_header_filter_module.c
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_init':
src/http/ngx_http_file_cache.c:127:21: warning: cast increases required alignment of target type [-Wcast-align]
     cache->shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
                     ^
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_read':
src/http/ngx_http_file_cache.c:548:9: warning: cast increases required alignment of target type [-Wcast-align]
     h = (ngx_http_file_cache_header_t *) c->buf->pos;
         ^
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_lookup':
src/http/ngx_http_file_cache.c:989:15: warning: cast increases required alignment of target type [-Wcast-align]
         fcn = (ngx_http_file_cache_node_t *) node;
               ^
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_rbtree_insert_value':
src/http/ngx_http_file_cache.c:1026:18: warning: cast increases required alignment of target type [-Wcast-align]
             cn = (ngx_http_file_cache_node_t *) node;
                  ^
src/http/ngx_http_file_cache.c:1027:19: warning: cast increases required alignment of target type [-Wcast-align]
             cnt = (ngx_http_file_cache_node_t *) temp;
                   ^
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_set_header':
src/http/ngx_http_file_cache.c:1239:40: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_http_file_cache_header_t  *h = (ngx_http_file_cache_header_t *) buf;
                                        ^
In file included from src/core/ngx_core.h:62:0,
                 from src/http/ngx_http_file_cache.c:9:
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_forced_expire':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/ngx_http_file_cache.c:1725:15: note: in expansion of macro 'ngx_queue_data'
         fcn = ngx_queue_data(q, ngx_http_file_cache_node_t, queue);
               ^~~~~~~~~~~~~~
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_expire':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/ngx_http_file_cache.c:1798:15: note: in expansion of macro 'ngx_queue_data'
         fcn = ngx_queue_data(q, ngx_http_file_cache_node_t, queue);
               ^~~~~~~~~~~~~~
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_delete':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/ngx_http_file_cache.c:1875:11: note: in expansion of macro 'ngx_queue_data'
     fcn = ngx_queue_data(q, ngx_http_file_cache_node_t, queue);
           ^~~~~~~~~~~~~~
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_set_slot':
src/http/ngx_http_file_cache.c:2562:14: warning: cast increases required alignment of target type [-Wcast-align]
     caches = (ngx_array_t *) (confp + cmd->offset);
              ^
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_valid_set_slot':
src/http/ngx_http_file_cache.c:2588:9: warning: cast increases required alignment of target type [-Wcast-align]
     a = (ngx_array_t **) (p + cmd->offset);
         ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_chunked_filter_module.o \
	src/http/modules/ngx_http_chunked_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/v2/ngx_http_v2_filter_module.o \
	src/http/v2/ngx_http_v2_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_range_filter_module.o \
	src/http/modules/ngx_http_range_filter_module.c
In file included from src/http/ngx_http.h:39:0,
                 from src/http/v2/ngx_http_v2_filter_module.c:10:
src/http/v2/ngx_http_v2_filter_module.c: In function 'ngx_http_v2_create_headers_frame':
src/http/v2/ngx_http_v2.h:314:7: warning: cast increases required alignment of target type [-Wcast-align]
     (*(uint32_t *) (p) = htonl((uint32_t) (s)), (p) + sizeof(uint32_t))
       ^
src/http/v2/ngx_http_v2.h:338:5: note: in expansion of macro 'ngx_http_v2_write_uint32_aligned'
     ngx_http_v2_write_uint32_aligned(p, (l) << 8 | (t))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2_filter_module.c:694:19: note: in expansion of macro 'ngx_http_v2_write_len_and_type'
         b->last = ngx_http_v2_write_len_and_type(b->last, frame_size, type);
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2_filter_module.c: In function 'ngx_http_v2_filter_get_data_frame':
src/http/v2/ngx_http_v2.h:314:7: warning: cast increases required alignment of target type [-Wcast-align]
     (*(uint32_t *) (p) = htonl((uint32_t) (s)), (p) + sizeof(uint32_t))
       ^
src/http/v2/ngx_http_v2.h:338:5: note: in expansion of macro 'ngx_http_v2_write_uint32_aligned'
     ngx_http_v2_write_uint32_aligned(p, (l) << 8 | (t))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2_filter_module.c:1032:17: note: in expansion of macro 'ngx_http_v2_write_len_and_type'
     buf->last = ngx_http_v2_write_len_and_type(buf->last, len,
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:62:0,
                 from src/http/v2/ngx_http_v2_filter_module.c:9:
src/http/v2/ngx_http_v2_filter_module.c: In function 'ngx_http_v2_waiting_queue':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2_filter_module.c:1119:13: note: in expansion of macro 'ngx_queue_data'
         s = ngx_queue_data(q, ngx_http_v2_stream_t, queue);
             ^~~~~~~~~~~~~~
src/http/v2/ngx_http_v2_filter_module.c: In function 'ngx_http_v2_filter_cleanup':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2_filter_module.c:1382:22: note: in expansion of macro 'ngx_queue_data'
             stream = ngx_queue_data(q, ngx_http_v2_stream_t, queue);
                      ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_gzip_filter_module.o \
	src/http/modules/ngx_http_gzip_filter_module.c
src/http/modules/ngx_http_gzip_filter_module.c: In function 'ngx_http_gzip_window':
src/http/modules/ngx_http_gzip_filter_module.c:1210:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "must be 512, 1k, 2k, 4k, 8k, 16k, or 32k";
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_gzip_filter_module.c: In function 'ngx_http_gzip_hash':
src/http/modules/ngx_http_gzip_filter_module.c:1234:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "must be 512, 1k, 2k, 4k, 8k, 16k, 32k, 64k, or 128k";
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_postpone_filter_module.o \
	src/http/ngx_http_postpone_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_ssi_filter_module.o \
	src/http/modules/ngx_http_ssi_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_charset_filter_module.o \
	src/http/modules/ngx_http_charset_filter_module.c
src/http/modules/ngx_http_ssi_filter_module.c: In function 'ngx_http_ssi_init_main_conf':
src/http/modules/ngx_http_ssi_filter_module.c:2849:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "ssi_command_hash";
               ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_userid_filter_module.o \
	src/http/modules/ngx_http_userid_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_headers_filter_module.o \
	src/http/modules/ngx_http_headers_filter_module.c
src/http/modules/ngx_http_charset_filter_module.c: In function 'ngx_http_charset_recode_from_utf8':
src/http/modules/ngx_http_charset_filter_module.c:802:17: warning: cast increases required alignment of target type [-Wcast-align]
         table = (u_char **) ctx->table;
                 ^
src/http/modules/ngx_http_charset_filter_module.c:877:13: warning: cast increases required alignment of target type [-Wcast-align]
     table = (u_char **) ctx->table;
             ^
src/http/modules/ngx_http_charset_filter_module.c: In function 'ngx_http_charset_map_block':
src/http/modules/ngx_http_charset_filter_module.c:1240:14: warning: cast increases required alignment of target type [-Wcast-align]
         pp = (u_char **) &table->dst2src[0];
              ^
src/http/modules/ngx_http_charset_filter_module.c: In function 'ngx_http_charset_map':
src/http/modules/ngx_http_charset_filter_module.c:1365:14: warning: cast increases required alignment of target type [-Wcast-align]
         pp = (u_char **) &table->dst2src[0];
              ^
src/http/modules/ngx_http_charset_filter_module.c: In function 'ngx_http_set_charset_slot':
src/http/modules/ngx_http_charset_filter_module.c:1405:10: warning: cast increases required alignment of target type [-Wcast-align]
     cp = (ngx_int_t *) (p + cmd->offset);
          ^
src/http/modules/ngx_http_charset_filter_module.c:1408:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_userid_filter_module.c: In function 'ngx_http_userid_create_uid':
src/http/modules/ngx_http_userid_filter_module.c:533:24: warning: cast increases required alignment of target type [-Wcast-align]
                 sin6 = (struct sockaddr_in6 *) c->local_sockaddr;
                        ^
src/http/modules/ngx_http_userid_filter_module.c:545:23: warning: cast increases required alignment of target type [-Wcast-align]
                 sin = (struct sockaddr_in *) c->local_sockaddr;
                       ^
src/http/modules/ngx_http_userid_filter_module.c: In function 'ngx_http_userid_expires':
src/http/modules/ngx_http_userid_filter_module.c:761:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_userid_filter_module.c:778:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/http/modules/ngx_http_userid_filter_module.c: In function 'ngx_http_userid_mark':
src/http/modules/ngx_http_userid_filter_module.c:806:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_userid_filter_module.c:822:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "value must be \"off\" or a single letter, digit or \"=\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_headers_filter_module.c: In function 'ngx_http_parse_expires':
src/http/modules/ngx_http_headers_filter_module.c:387:18: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             *err = "daily time cannot be used with \"modified\" parameter";
                  ^
src/http/modules/ngx_http_headers_filter_module.c:410:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         *err = "invalid value";
              ^
src/http/modules/ngx_http_headers_filter_module.c:417:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         *err = "daily time value must be less than 24 hours";
              ^
src/http/modules/ngx_http_headers_filter_module.c: In function 'ngx_http_set_response_header':
src/http/modules/ngx_http_headers_filter_module.c:513:11: warning: cast increases required alignment of target type [-Wcast-align]
     old = (ngx_table_elt_t **) ((char *) &r->headers_out + hv->offset);
           ^
src/http/modules/ngx_http_headers_filter_module.c: In function 'ngx_http_headers_expires':
src/http/modules/ngx_http_headers_filter_module.c:615:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_headers_filter_module.c:629:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             return "invalid value";
                    ^~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_copy_filter_module.o \
	src/http/ngx_http_copy_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_not_modified_filter_module.o \
	src/http/modules/ngx_http_not_modified_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/v2/ngx_http_v2.o \
	src/http/v2/ngx_http_v2.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/v2/ngx_http_v2_table.o \
	src/http/v2/ngx_http_v2_table.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/v2/ngx_http_v2_huff_decode.o \
	src/http/v2/ngx_http_v2_huff_decode.c
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_init':
src/http/v2/ngx_http_v2.c:219:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "processing HTTP/2 connection";
                    ^
In file included from src/core/ngx_core.h:49:0,
                 from src/http/v2/ngx_http_v2.c:9:
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_send_output_queue':
src/os/unix/ngx_socket.h:47:28: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 #define ngx_tcp_push_n     "setsockopt(!TCP_CORK)"
                            ^
src/http/v2/ngx_http_v2.c:521:55: note: in expansion of macro 'ngx_tcp_push_n'
             ngx_connection_error(c, ngx_socket_errno, ngx_tcp_push_n " failed");
                                                       ^~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/v2/ngx_http_v2.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c:548:34: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                  "setsockopt(TCP_NODELAY) failed");
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/v2/ngx_http_v2.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_state_proxy_protocol':
src/http/v2/ngx_http_v2.c:686:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "reading PROXY protocol";
                 ^
src/http/v2/ngx_http_v2.c:690:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "processing HTTP/2 connection";
                 ^
In file included from src/core/ngx_core.h:62:0,
                 from src/http/v2/ngx_http_v2.c:9:
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_state_window_update':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2.c:2232:18: note: in expansion of macro 'ngx_queue_data'
         stream = ngx_queue_data(q, ngx_http_v2_stream_t, queue);
                  ^~~~~~~~~~~~~~
In file included from src/http/ngx_http.h:39:0,
                 from src/http/v2/ngx_http_v2.c:10:
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_send_settings':
src/http/v2/ngx_http_v2.h:314:7: warning: cast increases required alignment of target type [-Wcast-align]
     (*(uint32_t *) (p) = htonl((uint32_t) (s)), (p) + sizeof(uint32_t))
       ^
src/http/v2/ngx_http_v2.h:338:5: note: in expansion of macro 'ngx_http_v2_write_uint32_aligned'
     ngx_http_v2_write_uint32_aligned(p, (l) << 8 | (t))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c:2486:17: note: in expansion of macro 'ngx_http_v2_write_len_and_type'
     buf->last = ngx_http_v2_write_len_and_type(buf->last, len,
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_get_frame':
src/http/v2/ngx_http_v2.h:314:7: warning: cast increases required alignment of target type [-Wcast-align]
     (*(uint32_t *) (p) = htonl((uint32_t) (s)), (p) + sizeof(uint32_t))
       ^
src/http/v2/ngx_http_v2.h:338:5: note: in expansion of macro 'ngx_http_v2_write_uint32_aligned'
     ngx_http_v2_write_uint32_aligned(p, (l) << 8 | (t))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c:2675:17: note: in expansion of macro 'ngx_http_v2_write_len_and_type'
     buf->last = ngx_http_v2_write_len_and_type(buf->pos, length, type);
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_create_stream':
src/http/v2/ngx_http_v2.c:2760:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "reading client request headers";
                 ^
In file included from src/core/ngx_core.h:62:0,
                 from src/http/v2/ngx_http_v2.c:9:
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_get_closed_node':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2.c:2900:12: note: in expansion of macro 'ngx_queue_data'
     node = ngx_queue_data(q, ngx_http_v2_node_t, reuse);
            ^~~~~~~~~~~~~~
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2.c:2923:17: note: in expansion of macro 'ngx_queue_data'
         child = ngx_queue_data(q, ngx_http_v2_node_t, queue);
                 ^~~~~~~~~~~~~~
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2.c:2933:17: note: in expansion of macro 'ngx_queue_data'
         child = ngx_queue_data(q, ngx_http_v2_node_t, queue);
                 ^~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_set_dependency':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2.c:4419:21: note: in expansion of macro 'ngx_queue_data'
             child = ngx_queue_data(q, ngx_http_v2_node_t, queue);
                     ^~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_node_children_update':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2.c:4449:17: note: in expansion of macro 'ngx_queue_data'
         child = ngx_queue_data(q, ngx_http_v2_node_t, queue);
                 ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/v2/ngx_http_v2_huff_encode.o \
	src/http/v2/ngx_http_v2_huff_encode.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/v2/ngx_http_v2_module.o \
	src/http/v2/ngx_http_v2_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_static_module.o \
	src/http/modules/ngx_http_static_module.c
src/http/v2/ngx_http_v2_huff_encode.c: In function 'ngx_http_v2_huff_encode':
src/http/v2/ngx_http_v2_huff_encode.c:186:7: warning: cast increases required alignment of target type [-Wcast-align]
     (*(uint32_t *) (dst) = htonl(buf))
       ^
src/http/v2/ngx_http_v2_huff_encode.c:227:9: note: in expansion of macro 'ngx_http_v2_huff_encode_buf'
         ngx_http_v2_huff_encode_buf(&dst[hlen], buf);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_autoindex_module.o \
	src/http/modules/ngx_http_autoindex_module.c
src/http/modules/ngx_http_static_module.c: In function 'ngx_http_static_handler':
src/http/modules/ngx_http_static_module.c:214:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "sending response to client";
                 ^
src/http/v2/ngx_http_v2_module.c: In function 'ngx_http_v2_recv_buffer_size':
src/http/v2/ngx_http_v2_module.c:413:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "value is too small";
                ^~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2_module.c: In function 'ngx_http_v2_streams_index_mask':
src/http/v2/ngx_http_v2_module.c:472:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "must be a power of two";
                ^~~~~~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_index_module.o \
	src/http/modules/ngx_http_index_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_auth_basic_module.o \
	src/http/modules/ngx_http_auth_basic_module.c
src/http/modules/ngx_http_autoindex_module.c: In function 'ngx_http_autoindex_html':
src/http/modules/ngx_http_autoindex_module.c:458:32: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                ^~~~~
src/http/modules/ngx_http_autoindex_module.c:458:39: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                       ^~~~~
src/http/modules/ngx_http_autoindex_module.c:458:46: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                              ^~~~~
src/http/modules/ngx_http_autoindex_module.c:458:53: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                                     ^~~~~
src/http/modules/ngx_http_autoindex_module.c:458:60: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                                            ^~~~~
src/http/modules/ngx_http_autoindex_module.c:458:67: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                                                   ^~~~~
src/http/modules/ngx_http_autoindex_module.c:459:32: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                ^~~~~
src/http/modules/ngx_http_autoindex_module.c:459:39: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                       ^~~~~
src/http/modules/ngx_http_autoindex_module.c:459:46: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                              ^~~~~
src/http/modules/ngx_http_autoindex_module.c:459:53: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                                     ^~~~~
src/http/modules/ngx_http_autoindex_module.c:459:60: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                                            ^~~~~
src/http/modules/ngx_http_autoindex_module.c:459:67: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                                                   ^~~~~
src/http/modules/ngx_http_autoindex_module.c:519:19: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         b->last = (u_char *) ngx_escape_html(b->last, r->uri.data, r->uri.len);
                   ^
src/http/modules/ngx_http_autoindex_module.c:521:19: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         b->last = (u_char *) ngx_escape_html(b->last, r->uri.data, r->uri.len);
                   ^
src/http/modules/ngx_http_autoindex_module.c:573:27: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
                 b->last = (u_char *) ngx_escape_html(last, entry[i].name.data,
                           ^
src/http/modules/ngx_http_autoindex_module.c:588:27: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
                 b->last = (u_char *) ngx_escape_html(b->last,
                           ^
src/http/modules/ngx_http_autoindex_module.c: In function 'ngx_http_autoindex_json':
src/http/modules/ngx_http_autoindex_module.c:745:23: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
             b->last = (u_char *) ngx_escape_json(b->last, entry[i].name.data,
                       ^
src/http/modules/ngx_http_autoindex_module.c: In function 'ngx_http_autoindex_xml':
src/http/modules/ngx_http_autoindex_module.c:907:23: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
             b->last = (u_char *) ngx_escape_html(b->last, entry[i].name.data,
                       ^
src/http/modules/ngx_http_auth_basic_module.c: In function 'ngx_http_auth_basic_user_file':
src/http/modules/ngx_http_auth_basic_module.c:449:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_index_module.c: In function 'ngx_http_index_handler':
src/http/modules/ngx_http_index_module.c:152:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_index_module.c:153:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) e.ip;
                          ^
src/http/modules/ngx_http_index_module.c:184:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_index_module.c:185:25: warning: cast increases required alignment of target type [-Wcast-align]
                 code = *(ngx_http_script_code_pt *) e.ip;
                         ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_access_module.o \
	src/http/modules/ngx_http_access_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_limit_conn_module.o \
	src/http/modules/ngx_http_limit_conn_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_limit_req_module.o \
	src/http/modules/ngx_http_limit_req_module.c
src/http/modules/ngx_http_limit_conn_module.c: In function 'ngx_http_limit_conn_handler':
src/http/modules/ngx_http_limit_conn_module.c:186:18: warning: cast increases required alignment of target type [-Wcast-align]
         shpool = (ngx_slab_pool_t *) limits[i].shm_zone->shm.addr;
                  ^
src/http/modules/ngx_http_limit_conn_module.c:206:18: warning: cast increases required alignment of target type [-Wcast-align]
             lc = (ngx_http_limit_conn_node_t *) &node->color;
                  ^
src/http/modules/ngx_http_limit_conn_module.c:206:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             lc = (ngx_http_limit_conn_node_t *) &node->color;
             ^~
src/http/modules/ngx_http_limit_conn_module.c:217:18: warning: cast increases required alignment of target type [-Wcast-align]
             lc = (ngx_http_limit_conn_node_t *) &node->color;
                  ^
src/http/modules/ngx_http_limit_conn_module.c:217:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             lc = (ngx_http_limit_conn_node_t *) &node->color;
             ^~
src/http/modules/ngx_http_access_module.c: In function 'ngx_http_access_handler':
src/http/modules/ngx_http_access_module.c:139:19: warning: cast increases required alignment of target type [-Wcast-align]
             sin = (struct sockaddr_in *) r->connection->sockaddr;
                   ^
src/http/modules/ngx_http_access_module.c:147:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) r->connection->sockaddr;
                ^
src/http/modules/ngx_http_limit_conn_module.c: In function 'ngx_http_limit_conn_rbtree_insert_value':
src/http/modules/ngx_http_limit_conn_module.c:275:19: warning: cast increases required alignment of target type [-Wcast-align]
             lcn = (ngx_http_limit_conn_node_t *) &node->color;
                   ^
src/http/modules/ngx_http_limit_conn_module.c:275:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             lcn = (ngx_http_limit_conn_node_t *) &node->color;
             ^~~
src/http/modules/ngx_http_limit_conn_module.c:276:20: warning: cast increases required alignment of target type [-Wcast-align]
             lcnt = (ngx_http_limit_conn_node_t *) &temp->color;
                    ^
src/http/modules/ngx_http_limit_conn_module.c:276:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             lcnt = (ngx_http_limit_conn_node_t *) &temp->color;
             ^~~~
src/http/modules/ngx_http_limit_conn_module.c: In function 'ngx_http_limit_conn_lookup':
src/http/modules/ngx_http_limit_conn_module.c:321:15: warning: cast increases required alignment of target type [-Wcast-align]
         lcn = (ngx_http_limit_conn_node_t *) &node->color;
               ^
src/http/modules/ngx_http_limit_conn_module.c:321:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
         lcn = (ngx_http_limit_conn_node_t *) &node->color;
         ^~~
src/http/modules/ngx_http_limit_conn_module.c: In function 'ngx_http_limit_conn_cleanup':
src/http/modules/ngx_http_limit_conn_module.c:347:14: warning: cast increases required alignment of target type [-Wcast-align]
     shpool = (ngx_slab_pool_t *) lccln->shm_zone->shm.addr;
              ^
src/http/modules/ngx_http_limit_conn_module.c:349:10: warning: cast increases required alignment of target type [-Wcast-align]
     lc = (ngx_http_limit_conn_node_t *) &node->color;
          ^
src/http/modules/ngx_http_limit_conn_module.c:349:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
     lc = (ngx_http_limit_conn_node_t *) &node->color;
     ^~
src/http/modules/ngx_http_limit_conn_module.c: In function 'ngx_http_limit_conn_init_zone':
src/http/modules/ngx_http_limit_conn_module.c:414:14: warning: cast increases required alignment of target type [-Wcast-align]
     shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
              ^
src/http/modules/ngx_http_limit_conn_module.c: In function 'ngx_http_limit_conn':
src/http/modules/ngx_http_limit_conn_module.c:625:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             return "is duplicate";
                    ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_geo_module.o \
	src/http/modules/ngx_http_geo_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_map_module.o \
	src/http/modules/ngx_http_map_module.c
src/http/modules/ngx_http_limit_req_module.c: In function 'ngx_http_limit_req_rbtree_insert_value':
src/http/modules/ngx_http_limit_req_module.c:337:19: warning: cast increases required alignment of target type [-Wcast-align]
             lrn = (ngx_http_limit_req_node_t *) &node->color;
                   ^
src/http/modules/ngx_http_limit_req_module.c:337:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             lrn = (ngx_http_limit_req_node_t *) &node->color;
             ^~~
src/http/modules/ngx_http_limit_req_module.c:338:20: warning: cast increases required alignment of target type [-Wcast-align]
             lrnt = (ngx_http_limit_req_node_t *) &temp->color;
                    ^
src/http/modules/ngx_http_limit_req_module.c:338:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             lrnt = (ngx_http_limit_req_node_t *) &temp->color;
             ^~~~
src/http/modules/ngx_http_limit_req_module.c: In function 'ngx_http_limit_req_lookup':
src/http/modules/ngx_http_limit_req_module.c:392:14: warning: cast increases required alignment of target type [-Wcast-align]
         lr = (ngx_http_limit_req_node_t *) &node->color;
              ^
src/http/modules/ngx_http_limit_req_module.c:392:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
         lr = (ngx_http_limit_req_node_t *) &node->color;
         ^~
src/http/modules/ngx_http_limit_req_module.c:453:10: warning: cast increases required alignment of target type [-Wcast-align]
     lr = (ngx_http_limit_req_node_t *) &node->color;
          ^
src/http/modules/ngx_http_limit_req_module.c:453:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
     lr = (ngx_http_limit_req_node_t *) &node->color;
     ^~
In file included from src/core/ngx_core.h:62:0,
                 from src/http/modules/ngx_http_limit_req_module.c:9:
src/http/modules/ngx_http_limit_req_module.c: In function 'ngx_http_limit_req_expire':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/modules/ngx_http_limit_req_module.c:569:14: note: in expansion of macro 'ngx_queue_data'
         lr = ngx_queue_data(q, ngx_http_limit_req_node_t, queue);
              ^~~~~~~~~~~~~~
src/http/modules/ngx_http_limit_req_module.c:599:16: warning: cast increases required alignment of target type [-Wcast-align]
         node = (ngx_rbtree_node_t *)
                ^
src/http/modules/ngx_http_limit_req_module.c: In function 'ngx_http_limit_req_init_zone':
src/http/modules/ngx_http_limit_req_module.c:639:19: warning: cast increases required alignment of target type [-Wcast-align]
     ctx->shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
                   ^
src/http/modules/ngx_http_limit_req_module.c: In function 'ngx_http_limit_req':
src/http/modules/ngx_http_limit_req_module.c:927:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             return "is duplicate";
                    ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_split_clients_module.o \
	src/http/modules/ngx_http_split_clients_module.c
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_cidr_variable':
src/http/modules/ngx_http_geo_module.c:189:14: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
         vv = (ngx_http_variable_value_t *)
              ^
src/http/modules/ngx_http_geo_module.c:198:21: warning: cast increases required alignment of target type [-Wcast-align]
         inaddr6 = &((struct sockaddr_in6 *) addr.sockaddr)->sin6_addr;
                     ^
src/http/modules/ngx_http_geo_module.c:207:18: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
             vv = (ngx_http_variable_value_t *)
                  ^
src/http/modules/ngx_http_geo_module.c:211:18: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
             vv = (ngx_http_variable_value_t *)
                  ^
src/http/modules/ngx_http_geo_module.c:219:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) addr.sockaddr;
               ^
src/http/modules/ngx_http_geo_module.c:222:14: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
         vv = (ngx_http_variable_value_t *)
              ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_range_variable':
src/http/modules/ngx_http_geo_module.c:263:25: warning: cast increases required alignment of target type [-Wcast-align]
             inaddr6 = &((struct sockaddr_in6 *) addr.sockaddr)->sin6_addr;
                         ^
src/http/modules/ngx_http_geo_module.c:281:19: warning: cast increases required alignment of target type [-Wcast-align]
             sin = (struct sockaddr_in *) addr.sockaddr;
                   ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_cidr_add':
src/http/modules/ngx_http_geo_module.c:1156:15: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
         old = (ngx_http_variable_value_t *)
               ^
src/http/modules/ngx_http_geo_module.c:1194:15: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
         old = (ngx_http_variable_value_t *)
               ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_include_binary_base':
src/http/modules/ngx_http_geo_module.c:1475:14: warning: cast increases required alignment of target type [-Wcast-align]
     header = (ngx_http_geo_header_t *) base;
              ^
src/http/modules/ngx_http_geo_module.c:1485:10: warning: cast increases required alignment of target type [-Wcast-align]
     vv = (ngx_http_variable_value_t *) (base + sizeof(ngx_http_geo_header_t));
          ^
src/http/modules/ngx_http_geo_module.c:1492:14: warning: cast increases required alignment of target type [-Wcast-align]
         vv = (ngx_http_variable_value_t *) ((u_char *) vv + len);
              ^
src/http/modules/ngx_http_geo_module.c:1502:25: warning: cast increases required alignment of target type [-Wcast-align]
             ranges[i] = (ngx_http_geo_range_t *)
                         ^
src/http/modules/ngx_http_geo_module.c:1513:28: warning: cast increases required alignment of target type [-Wcast-align]
             range->value = (ngx_http_variable_value_t *)
                            ^
src/http/modules/ngx_http_geo_module.c:1518:17: warning: cast increases required alignment of target type [-Wcast-align]
         range = (ngx_http_geo_range_t *) ((u_char *) range + sizeof(void *));
                 ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_create_binary_base':
src/http/modules/ngx_http_geo_module.c:1591:14: warning: cast increases required alignment of target type [-Wcast-align]
     ranges = (ngx_http_geo_range_t **) p;
              ^
src/http/modules/ngx_http_geo_module.c:1601:17: warning: cast increases required alignment of target type [-Wcast-align]
         range = (ngx_http_geo_range_t *) p;
                 ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_copy_values':
src/http/modules/ngx_http_geo_module.c:1646:10: warning: cast increases required alignment of target type [-Wcast-align]
     vv = (ngx_http_variable_value_t *) p;
          ^
src/http/modules/ngx_http_map_module.c: In function 'ngx_http_map_variable':
src/http/modules/ngx_http_map_module.c:135:14: warning: cast increases required alignment of target type [-Wcast-align]
         cv = (ngx_http_complex_value_t *) value->data;
              ^
src/http/modules/ngx_http_map_module.c: In function 'ngx_http_map_block':
src/http/modules/ngx_http_map_module.c:298:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "map_hash";
               ^
src/http/modules/ngx_http_map_module.c: In function 'ngx_http_map':
src/http/modules/ngx_http_map_module.c:439:23: warning: cast increases required alignment of target type [-Wcast-align]
                 cvp = (ngx_http_complex_value_t *) vp[i]->data;
                       ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_referer_module.o \
	src/http/modules/ngx_http_referer_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_rewrite_module.o \
	src/http/modules/ngx_http_rewrite_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_ssl_module.o \
	src/http/modules/ngx_http_ssl_module.c
src/http/modules/ngx_http_referer_module.c: In function 'ngx_http_referer_merge_conf':
src/http/modules/ngx_http_referer_module.c:376:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "referer_hash";
               ^
src/http/modules/ngx_http_rewrite_module.c: In function 'ngx_http_rewrite_handler':
src/http/modules/ngx_http_rewrite_module.c:178:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) e->ip) {
             ^
src/http/modules/ngx_http_rewrite_module.c:179:17: warning: cast increases required alignment of target type [-Wcast-align]
         code = *(ngx_http_script_code_pt *) e->ip;
                 ^
src/http/modules/ngx_http_rewrite_module.c: In function 'ngx_http_rewrite_if':
src/http/modules/ngx_http_rewrite_module.c:634:19: warning: cast increases required alignment of target type [-Wcast-align]
         if_code = (ngx_http_script_if_code_t *)
                   ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_proxy_module.o \
	src/http/modules/ngx_http_proxy_module.c
src/http/modules/ngx_http_ssl_module.c: In function 'ngx_http_ssl_password_file':
src/http/modules/ngx_http_ssl_module.c:834:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_fastcgi_module.o \
	src/http/modules/ngx_http_fastcgi_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_uwsgi_module.o \
	src/http/modules/ngx_http_uwsgi_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_scgi_module.o \
	src/http/modules/ngx_http_scgi_module.c
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_create_request':
src/http/modules/ngx_http_proxy_module.c:1231:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1232:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_proxy_module.c:1251:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) le.ip) {
             ^
src/http/modules/ngx_http_proxy_module.c:1252:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1253:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_proxy_module.c:1355:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) le.ip) {
             ^
src/http/modules/ngx_http_proxy_module.c:1356:18: warning: cast increases required alignment of target type [-Wcast-align]
         lcode = *(ngx_http_script_len_code_pt *) le.ip;
                  ^
src/http/modules/ngx_http_proxy_module.c:1361:14: warning: cast increases required alignment of target type [-Wcast-align]
         if (*(ngx_http_script_len_code_pt *) le.ip) {
              ^
src/http/modules/ngx_http_proxy_module.c:1363:28: warning: cast increases required alignment of target type [-Wcast-align]
             for (len = 0; *(uintptr_t *) le.ip; len += lcode(&le)) {
                            ^
src/http/modules/ngx_http_proxy_module.c:1364:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) le.ip;
                          ^
src/http/modules/ngx_http_proxy_module.c:1375:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) e.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1376:21: warning: cast increases required alignment of target type [-Wcast-align]
             code = *(ngx_http_script_code_pt *) e.ip;
                     ^
src/http/modules/ngx_http_proxy_module.c:1431:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) e.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1432:21: warning: cast increases required alignment of target type [-Wcast-align]
             code = *(ngx_http_script_code_pt *) e.ip;
                     ^
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_rewrite_cookie':
src/http/modules/ngx_http_proxy_module.c:2549:53: warning: passing argument 2 of 'ngx_strcasestrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = ngx_strcasestrn(h->value.data + prefix, "domain=", 7 - 1);
                                                     ^~~~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/modules/ngx_http_proxy_module.c:9:
src/core/ngx_string.h:163:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strcasestrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c:2565:53: warning: passing argument 2 of 'ngx_strcasestrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = ngx_strcasestrn(h->value.data + prefix, "path=", 5 - 1);
                                                     ^~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/modules/ngx_http_proxy_module.c:9:
src/core/ngx_string.h:163:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strcasestrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_merge_loc_conf':
src/http/modules/ngx_http_proxy_module.c:3292:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "proxy_headers_hash";
               ^
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_init_headers':
src/http/modules/ngx_http_proxy_module.c:3618:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "proxy_headers_hash";
               ^
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_pass':
src/http/modules/ngx_http_proxy_module.c:3640:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_store':
src/http/modules/ngx_http_proxy_module.c:4114:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c:4126:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"proxy_cache\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_cache':
src/http/modules/ngx_http_proxy_module.c:4171:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c:4180:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"proxy_store\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_cache_key':
src/http/modules/ngx_http_proxy_module.c:4229:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_ssl_password_file':
src/http/modules/ngx_http_proxy_module.c:4258:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c: In function 'ngx_http_fastcgi_create_request':
src/http/modules/ngx_http_fastcgi_module.c:859:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_fastcgi_module.c:861:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_fastcgi_module.c:864:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_fastcgi_module.c:867:32: warning: cast increases required alignment of target type [-Wcast-align]
             for (val_len = 0; *(uintptr_t *) le.ip; val_len += lcode(&le)) {
                                ^
src/http/modules/ngx_http_fastcgi_module.c:868:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) le.ip;
                          ^
src/http/modules/ngx_http_fastcgi_module.c:1020:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_fastcgi_module.c:1022:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_fastcgi_module.c:1025:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_fastcgi_module.c:1028:32: warning: cast increases required alignment of target type [-Wcast-align]
             for (val_len = 0; *(uintptr_t *) le.ip; val_len += lcode(&le)) {
                                ^
src/http/modules/ngx_http_fastcgi_module.c:1029:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) le.ip;
                          ^
src/http/modules/ngx_http_fastcgi_module.c:1036:25: warning: cast increases required alignment of target type [-Wcast-align]
                 while (*(uintptr_t *) e.ip) {
                         ^
src/http/modules/ngx_http_fastcgi_module.c:1037:29: warning: cast increases required alignment of target type [-Wcast-align]
                     code = *(ngx_http_script_code_pt *) e.ip;
                             ^
src/http/modules/ngx_http_fastcgi_module.c:1059:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_fastcgi_module.c:1060:25: warning: cast increases required alignment of target type [-Wcast-align]
                 code = *(ngx_http_script_code_pt *) e.ip;
                         ^
src/http/modules/ngx_http_fastcgi_module.c: In function 'ngx_http_fastcgi_merge_loc_conf':
src/http/modules/ngx_http_fastcgi_module.c:3083:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "fastcgi_hide_headers_hash";
               ^
src/http/modules/ngx_http_fastcgi_module.c: In function 'ngx_http_fastcgi_init_params':
src/http/modules/ngx_http_fastcgi_module.c:3353:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "fastcgi_params_hash";
               ^
src/http/modules/ngx_http_fastcgi_module.c: In function 'ngx_http_fastcgi_pass':
src/http/modules/ngx_http_fastcgi_module.c:3511:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c: In function 'ngx_http_fastcgi_store':
src/http/modules/ngx_http_fastcgi_module.c:3616:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c:3628:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"fastcgi_cache\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c: In function 'ngx_http_fastcgi_cache':
src/http/modules/ngx_http_fastcgi_module.c:3673:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c:3682:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"fastcgi_store\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c: In function 'ngx_http_fastcgi_cache_key':
src/http/modules/ngx_http_fastcgi_module.c:3731:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_create_request':
src/http/modules/ngx_http_uwsgi_module.c:851:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_uwsgi_module.c:853:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_uwsgi_module.c:856:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_uwsgi_module.c:859:32: warning: cast increases required alignment of target type [-Wcast-align]
             for (val_len = 0; *(uintptr_t *) le.ip; val_len += lcode (&le)) {
                                ^
src/http/modules/ngx_http_uwsgi_module.c:860:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) le.ip;
                          ^
src/http/modules/ngx_http_uwsgi_module.c:981:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_uwsgi_module.c:983:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_uwsgi_module.c:986:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_uwsgi_module.c:989:32: warning: cast increases required alignment of target type [-Wcast-align]
             for (val_len = 0; *(uintptr_t *) le.ip; val_len += lcode(&le)) {
                                ^
src/http/modules/ngx_http_uwsgi_module.c:990:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) le.ip;
                          ^
src/http/modules/ngx_http_uwsgi_module.c:997:25: warning: cast increases required alignment of target type [-Wcast-align]
                 while (*(uintptr_t *) e.ip) {
                         ^
src/http/modules/ngx_http_uwsgi_module.c:998:29: warning: cast increases required alignment of target type [-Wcast-align]
                     code = *(ngx_http_script_code_pt *) e.ip;
                             ^
src/http/modules/ngx_http_uwsgi_module.c:1011:21: warning: cast increases required alignment of target type [-Wcast-align]
             code = *(ngx_http_script_code_pt *) e.ip;
                     ^
src/http/modules/ngx_http_uwsgi_module.c:1017:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_uwsgi_module.c:1018:25: warning: cast increases required alignment of target type [-Wcast-align]
                 code = *(ngx_http_script_code_pt *) e.ip;
                         ^
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_merge_loc_conf':
src/http/modules/ngx_http_uwsgi_module.c:1775:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "uwsgi_hide_headers_hash";
               ^
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_init_params':
src/http/modules/ngx_http_uwsgi_module.c:2046:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "uwsgi_params_hash";
               ^
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_pass':
src/http/modules/ngx_http_uwsgi_module.c:2067:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_store':
src/http/modules/ngx_http_uwsgi_module.c:2148:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c:2161:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"uwsgi_cache\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_cache':
src/http/modules/ngx_http_uwsgi_module.c:2207:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c:2216:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"uwsgi_store\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_cache_key':
src/http/modules/ngx_http_uwsgi_module.c:2265:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_ssl_password_file':
src/http/modules/ngx_http_uwsgi_module.c:2294:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_create_request':
src/http/modules/ngx_http_scgi_module.c:664:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_scgi_module.c:666:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_scgi_module.c:669:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_scgi_module.c:672:32: warning: cast increases required alignment of target type [-Wcast-align]
             for (val_len = 0; *(uintptr_t *) le.ip; val_len += lcode(&le)) {
                                ^
src/http/modules/ngx_http_scgi_module.c:673:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) le.ip;
                          ^
src/http/modules/ngx_http_scgi_module.c:783:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_scgi_module.c:785:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_scgi_module.c:788:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_scgi_module.c:791:32: warning: cast increases required alignment of target type [-Wcast-align]
             for (val_len = 0; *(uintptr_t *) le.ip; val_len += lcode(&le)) {
                                ^
src/http/modules/ngx_http_scgi_module.c:792:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) le.ip;
                          ^
src/http/modules/ngx_http_scgi_module.c:799:25: warning: cast increases required alignment of target type [-Wcast-align]
                 while (*(uintptr_t *) e.ip) {
                         ^
src/http/modules/ngx_http_scgi_module.c:800:29: warning: cast increases required alignment of target type [-Wcast-align]
                     code = *(ngx_http_script_code_pt *) e.ip;
                             ^
src/http/modules/ngx_http_scgi_module.c:813:21: warning: cast increases required alignment of target type [-Wcast-align]
             code = *(ngx_http_script_code_pt *) e.ip;
                     ^
src/http/modules/ngx_http_scgi_module.c:819:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_scgi_module.c:820:25: warning: cast increases required alignment of target type [-Wcast-align]
                 code = *(ngx_http_script_code_pt *) e.ip;
                         ^
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_merge_loc_conf':
src/http/modules/ngx_http_scgi_module.c:1521:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "scgi_hide_headers_hash";
               ^
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_init_params':
src/http/modules/ngx_http_scgi_module.c:1784:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "scgi_params_hash";
               ^
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_pass':
src/http/modules/ngx_http_scgi_module.c:1804:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_store':
src/http/modules/ngx_http_scgi_module.c:1862:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c:1874:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"scgi_cache\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_cache':
src/http/modules/ngx_http_scgi_module.c:1919:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c:1928:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"scgi_store\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_cache_key':
src/http/modules/ngx_http_scgi_module.c:1977:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_memcached_module.o \
	src/http/modules/ngx_http_memcached_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_empty_gif_module.o \
	src/http/modules/ngx_http_empty_gif_module.c
src/http/modules/ngx_http_memcached_module.c: In function 'ngx_http_memcached_create_request':
src/http/modules/ngx_http_memcached_module.c:280:19: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         b->last = (u_char *) ngx_escape_uri(b->last, vv->data, vv->len,
                   ^
src/http/modules/ngx_http_memcached_module.c: In function 'ngx_http_memcached_pass':
src/http/modules/ngx_http_memcached_module.c:693:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_browser_module.o \
	src/http/modules/ngx_http_browser_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_upstream_hash_module.o \
	src/http/modules/ngx_http_upstream_hash_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_upstream_ip_hash_module.o \
	src/http/modules/ngx_http_upstream_ip_hash_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_upstream_least_conn_module.o \
	src/http/modules/ngx_http_upstream_least_conn_module.c
src/http/modules/ngx_http_upstream_ip_hash_module.c: In function 'ngx_http_upstream_init_ip_hash_peer':
src/http/modules/ngx_http_upstream_ip_hash_module.c:122:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) r->connection->sockaddr;
               ^
src/http/modules/ngx_http_upstream_ip_hash_module.c:129:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) r->connection->sockaddr;
                ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_upstream_keepalive_module.o \
	src/http/modules/ngx_http_upstream_keepalive_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_upstream_zone_module.o \
	src/http/modules/ngx_http_upstream_zone_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_stub_status_module.o \
	src/http/modules/ngx_http_stub_status_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/nginx-module/ngx_http_groonga_module.o \
	/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c
In file included from src/core/ngx_core.h:62:0,
                 from src/http/modules/ngx_http_upstream_keepalive_module.c:9:
src/http/modules/ngx_http_upstream_keepalive_module.c: In function 'ngx_http_upstream_get_keepalive_peer':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/modules/ngx_http_upstream_keepalive_module.c:236:16: note: in expansion of macro 'ngx_queue_data'
         item = ngx_queue_data(q, ngx_http_upstream_keepalive_cache_t, queue);
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_upstream_keepalive_module.c: In function 'ngx_http_upstream_free_keepalive_peer':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/modules/ngx_http_upstream_keepalive_module.c:325:16: note: in expansion of macro 'ngx_queue_data'
         item = ngx_queue_data(q, ngx_http_upstream_keepalive_cache_t, queue);
                ^~~~~~~~~~~~~~
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/modules/ngx_http_upstream_keepalive_module.c:333:16: note: in expansion of macro 'ngx_queue_data'
         item = ngx_queue_data(q, ngx_http_upstream_keepalive_cache_t, queue);
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_upstream_keepalive_module.c: In function 'ngx_http_upstream_keepalive':
src/http/modules/ngx_http_upstream_keepalive_module.c:502:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_upstream_zone_module.c: In function 'ngx_http_upstream_init_zone':
src/http/modules/ngx_http_upstream_zone_module.c:128:14: warning: cast increases required alignment of target type [-Wcast-align]
     shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
              ^
src/http/modules/ngx_http_upstream_zone_module.c:162:5: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     peersp = (ngx_http_upstream_rr_peers_t **) (void *) &shpool->data;
     ^~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/src/ndk.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk.c
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c: In function 'ngx_http_groonga_logger_log':
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:195:26: warning: passing argument 2 of 'ngx_write_fd' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   ngx_write_fd(file->fd, "|", 1);
                          ^~~
In file included from src/core/ngx_core.h:51:0,
                 from /<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:24:
src/os/unix/ngx_files.h:145:1: note: expected 'void *' but argument is of type 'const char *'
 ngx_write_fd(ngx_fd_t fd, void *buf, size_t n)
 ^~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:197:26: warning: passing argument 2 of 'ngx_write_fd' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   ngx_write_fd(file->fd, "|", 1);
                          ^~~
In file included from src/core/ngx_core.h:51:0,
                 from /<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:24:
src/os/unix/ngx_files.h:145:1: note: expected 'void *' but argument is of type 'const char *'
 ngx_write_fd(ngx_fd_t fd, void *buf, size_t n)
 ^~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_module.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:202:28: warning: passing argument 2 of 'ngx_write_fd' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_write_fd(file->fd, ": ", 2);
                            ^~~~
In file included from src/core/ngx_core.h:51:0,
                 from /<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:24:
src/os/unix/ngx_files.h:145:1: note: expected 'void *' but argument is of type 'const char *'
 ngx_write_fd(ngx_fd_t fd, void *buf, size_t n)
 ^~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:207:30: warning: passing argument 2 of 'ngx_write_fd' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       ngx_write_fd(file->fd, " ", 1);
                              ^~~
In file included from src/core/ngx_core.h:51:0,
                 from /<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:24:
src/os/unix/ngx_files.h:145:1: note: expected 'void *' but argument is of type 'const char *'
 ngx_write_fd(ngx_fd_t fd, void *buf, size_t n)
 ^~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:213:28: warning: passing argument 2 of 'ngx_write_fd' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_write_fd(file->fd, " ", 1);
                            ^~~
In file included from src/core/ngx_core.h:51:0,
                 from /<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:24:
src/os/unix/ngx_files.h:145:1: note: expected 'void *' but argument is of type 'const char *'
 ngx_write_fd(ngx_fd_t fd, void *buf, size_t n)
 ^~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:218:26: warning: passing argument 2 of 'ngx_write_fd' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   ngx_write_fd(file->fd, "\n", 1);
                          ^~~~
In file included from src/core/ngx_core.h:51:0,
                 from /<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:24:
src/os/unix/ngx_files.h:145:1: note: expected 'void *' but argument is of type 'const char *'
 ngx_write_fd(ngx_fd_t fd, void *buf, size_t n)
 ^~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c: In function 'ngx_http_groonga_context_receive_handler_typed':
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:522:36: warning: passing argument 2 of 'ngx_os_signal_process' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                    "quit",
                                    ^~~~~~
In file included from src/core/ngx_core.h:88:0,
                 from /<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:24:
src/os/unix/ngx_os.h:43:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_os_signal_process(ngx_cycle_t *cycle, char *sig, ngx_pid_t pid);
           ^~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c: In function 'ngx_http_groonga_conf_set_log_level_slot':
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:1133:12: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     status = "must be one of 'none', 'emergency', 'alert', "
            ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_core.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_core.c
In file included from /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs/ndk_config.c:50:0,
                 from /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk.c:8:
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_code':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:90:10: warning: cast increases required alignment of target type [-Wcast-align]
     sv = (ndk_set_var_code_t *) e->ip;
          ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_data_code':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:113:11: warning: cast increases required alignment of target type [-Wcast-align]
     svd = (ndk_set_var_data_code_t *) e->ip;
           ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_value_code':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:136:10: warning: cast increases required alignment of target type [-Wcast-align]
     sv = (ndk_set_var_code_t *) e->ip;
          ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_value_data_code':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:159:11: warning: cast increases required alignment of target type [-Wcast-align]
     svd = (ndk_set_var_data_code_t *) e->ip;
           ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_multi_value_code':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:182:11: warning: cast increases required alignment of target type [-Wcast-align]
     svs = (ndk_set_var_size_code_t *) e->ip;
           ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_multi_value_data_code':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:206:12: warning: cast increases required alignment of target type [-Wcast-align]
     svsd = (ndk_set_var_size_data_code_t *) e->ip;
            ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_hash_code':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:229:11: warning: cast increases required alignment of target type [-Wcast-align]
     svs = (ndk_set_var_size_code_t *) e->ip;
           ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_filter':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:339:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "no filter set";
                ^~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_ssl_handshake_phase':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1048:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "is duplicated";
            ^~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_ssl_handshake_inline':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1091:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "is duplicated";
            ^~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_init_phase':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1123:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "[Use either 'mruby_init' or 'mruby_init_code']";
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_init_inline':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1160:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "is duplicated";
            ^~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_init_worker_phase':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1187:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "[Use either 'mruby_init_worker' or 'mruby_init_worker_code'";
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_init_worker_inline':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1224:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "is duplicated";
            ^~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_exit_worker_phase':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1251:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "[Use either 'mruby_exit_worker' or 'mruby_exit_worker_code'";
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_exit_worker_inline':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1288:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "is duplicated";
            ^~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_init.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_init.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_request.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_var.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_var.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_connection.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_connection.c
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c: In function 'ngx_mrb_headers_in_obj':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:653:43: warning: passing argument 3 of 'ngx_mrb_get_class_obj' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   return ngx_mrb_get_class_obj(mrb, self, "headers_in_obj", "Headers_in");
                                           ^~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:635:18: note: expected 'char *' but argument is of type 'const char *'
 static mrb_value ngx_mrb_get_class_obj(mrb_state *mrb, mrb_value self, char *obj_id, char *class_name)
                  ^~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:653:61: warning: passing argument 4 of 'ngx_mrb_get_class_obj' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   return ngx_mrb_get_class_obj(mrb, self, "headers_in_obj", "Headers_in");
                                                             ^~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:635:18: note: expected 'char *' but argument is of type 'const char *'
 static mrb_value ngx_mrb_get_class_obj(mrb_state *mrb, mrb_value self, char *obj_id, char *class_name)
                  ^~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c: In function 'ngx_mrb_headers_out_obj':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:658:43: warning: passing argument 3 of 'ngx_mrb_get_class_obj' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   return ngx_mrb_get_class_obj(mrb, self, "headers_out_obj", "Headers_out");
                                           ^~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:635:18: note: expected 'char *' but argument is of type 'const char *'
 static mrb_value ngx_mrb_get_class_obj(mrb_state *mrb, mrb_value self, char *obj_id, char *class_name)
                  ^~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:658:62: warning: passing argument 4 of 'ngx_mrb_get_class_obj' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   return ngx_mrb_get_class_obj(mrb, self, "headers_out_obj", "Headers_out");
                                                              ^~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:635:18: note: expected 'char *' but argument is of type 'const char *'
 static mrb_value ngx_mrb_get_class_obj(mrb_state *mrb, mrb_value self, char *obj_id, char *class_name)
                  ^~~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_server.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_server.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_filter.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_filter.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_upstream.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_upstream.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_ssl.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_ssl.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/ngx_modules.o \
	objs/ngx_modules.c
sed -e "s|%%PREFIX%%|/etc/groonga/httpd|" \
	-e "s|%%PID_PATH%%|/var/run/groonga-httpd.pid|" \
	-e "s|%%CONF_PATH%%|/etc/groonga/httpd/groonga-httpd.conf|" \
	-e "s|%%ERROR_LOG_PATH%%|/var/log/groonga/httpd/error.log|" \
	< docs/man/nginx.8 > objs/nginx.8
objs/ngx_modules.c:127:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_core_module",
     ^~~~~~~~~~~~~~~~~
objs/ngx_modules.c:128:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_errlog_module",
     ^~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:129:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_conf_module",
     ^~~~~~~~~~~~~~~~~
objs/ngx_modules.c:130:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_openssl_module",
     ^~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:131:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_regex_module",
     ^~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:132:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_events_module",
     ^~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:133:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_event_core_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:134:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_epoll_module",
     ^~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:135:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_module",
     ^~~~~~~~~~~~~~~~~
objs/ngx_modules.c:136:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_core_module",
     ^~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:137:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_log_module",
     ^~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:138:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:139:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_v2_module",
     ^~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:140:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_static_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:141:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_autoindex_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:142:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_index_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:143:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_auth_basic_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:144:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_access_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:145:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_limit_conn_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:146:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_limit_req_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:147:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_geo_module",
     ^~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:148:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_map_module",
     ^~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:149:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_split_clients_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:150:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_referer_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:151:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_rewrite_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:152:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_ssl_module",
     ^~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:153:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_proxy_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:154:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_fastcgi_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:155:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_uwsgi_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:156:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_scgi_module",
     ^~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:157:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_memcached_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:158:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_empty_gif_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:159:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_browser_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:160:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_hash_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:161:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_ip_hash_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:162:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_least_conn_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:163:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_keepalive_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:164:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_zone_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:165:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_stub_status_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:166:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_groonga_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:167:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ndk_http_module",
     ^~~~~~~~~~~~~~~~~
objs/ngx_modules.c:168:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_write_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:169:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_header_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:170:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_chunked_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:171:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_v2_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:172:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_range_header_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:173:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_gzip_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:174:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_postpone_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:175:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_ssi_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:176:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_charset_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:177:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_userid_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:178:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_headers_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:179:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "__ngx_http_upstream_keepalive_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:180:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_mruby_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:181:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_copy_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:182:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_range_body_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:183:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_not_modified_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:62:0,
                 from /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.h:12,
                 from /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_upstream.c:7:
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_upstream.h: In function '__ngx_http_upstream_get_keepalive_peer':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_upstream.h:212:12: note: in expansion of macro 'ngx_queue_data'
     item = ngx_queue_data(q, __ngx_http_upstream_keepalive_cache_t, queue);
            ^~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_upstream.h: In function '__ngx_http_upstream_free_keepalive_peer':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_upstream.h:274:12: note: in expansion of macro 'ngx_queue_data'
     item = ngx_queue_data(q, __ngx_http_upstream_keepalive_cache_t, queue);
            ^~~~~~~~~~~~~~
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_upstream.h:282:12: note: in expansion of macro 'ngx_queue_data'
     item = ngx_queue_data(q, __ngx_http_upstream_keepalive_cache_t, queue);
            ^~~~~~~~~~~~~~
In file included from /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_upstream.c:14:0:
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_upstream.h: In function '__ngx_http_upstream_keepalive':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_upstream.h:436:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "is duplicate";
            ^~~~~~~~~~~~~~
cc -o objs/nginx \
objs/src/core/nginx.o \
objs/src/core/ngx_log.o \
objs/src/core/ngx_palloc.o \
objs/src/core/ngx_array.o \
objs/src/core/ngx_list.o \
objs/src/core/ngx_hash.o \
objs/src/core/ngx_buf.o \
objs/src/core/ngx_queue.o \
objs/src/core/ngx_output_chain.o \
objs/src/core/ngx_string.o \
objs/src/core/ngx_parse.o \
objs/src/core/ngx_parse_time.o \
objs/src/core/ngx_inet.o \
objs/src/core/ngx_file.o \
objs/src/core/ngx_crc32.o \
objs/src/core/ngx_murmurhash.o \
objs/src/core/ngx_md5.o \
objs/src/core/ngx_sha1.o \
objs/src/core/ngx_rbtree.o \
objs/src/core/ngx_radix_tree.o \
objs/src/core/ngx_slab.o \
objs/src/core/ngx_times.o \
objs/src/core/ngx_shmtx.o \
objs/src/core/ngx_connection.o \
objs/src/core/ngx_cycle.o \
objs/src/core/ngx_spinlock.o \
objs/src/core/ngx_rwlock.o \
objs/src/core/ngx_cpuinfo.o \
objs/src/core/ngx_conf_file.o \
objs/src/core/ngx_module.o \
objs/src/core/ngx_resolver.o \
objs/src/core/ngx_open_file_cache.o \
objs/src/core/ngx_crypt.o \
objs/src/core/ngx_proxy_protocol.o \
objs/src/core/ngx_syslog.o \
objs/src/event/ngx_event.o \
objs/src/event/ngx_event_timer.o \
objs/src/event/ngx_event_posted.o \
objs/src/event/ngx_event_accept.o \
objs/src/event/ngx_event_connect.o \
objs/src/event/ngx_event_pipe.o \
objs/src/os/unix/ngx_time.o \
objs/src/os/unix/ngx_errno.o \
objs/src/os/unix/ngx_alloc.o \
objs/src/os/unix/ngx_files.o \
objs/src/os/unix/ngx_socket.o \
objs/src/os/unix/ngx_recv.o \
objs/src/os/unix/ngx_readv_chain.o \
objs/src/os/unix/ngx_udp_recv.o \
objs/src/os/unix/ngx_send.o \
objs/src/os/unix/ngx_writev_chain.o \
objs/src/os/unix/ngx_udp_send.o \
objs/src/os/unix/ngx_udp_sendmsg_chain.o \
objs/src/os/unix/ngx_channel.o \
objs/src/os/unix/ngx_shmem.o \
objs/src/os/unix/ngx_process.o \
objs/src/os/unix/ngx_daemon.o \
objs/src/os/unix/ngx_setaffinity.o \
objs/src/os/unix/ngx_setproctitle.o \
objs/src/os/unix/ngx_posix_init.o \
objs/src/os/unix/ngx_user.o \
objs/src/os/unix/ngx_dlopen.o \
objs/src/os/unix/ngx_process_cycle.o \
objs/src/os/unix/ngx_linux_init.o \
objs/src/event/modules/ngx_epoll_module.o \
objs/src/os/unix/ngx_linux_sendfile_chain.o \
objs/src/event/ngx_event_openssl.o \
objs/src/event/ngx_event_openssl_stapling.o \
objs/src/core/ngx_regex.o \
objs/src/http/ngx_http.o \
objs/src/http/ngx_http_core_module.o \
objs/src/http/ngx_http_special_response.o \
objs/src/http/ngx_http_request.o \
objs/src/http/ngx_http_parse.o \
objs/src/http/modules/ngx_http_log_module.o \
objs/src/http/ngx_http_request_body.o \
objs/src/http/ngx_http_variables.o \
objs/src/http/ngx_http_script.o \
objs/src/http/ngx_http_upstream.o \
objs/src/http/ngx_http_upstream_round_robin.o \
objs/src/http/ngx_http_file_cache.o \
objs/src/http/ngx_http_write_filter_module.o \
objs/src/http/ngx_http_header_filter_module.o \
objs/src/http/modules/ngx_http_chunked_filter_module.o \
objs/src/http/v2/ngx_http_v2_filter_module.o \
objs/src/http/modules/ngx_http_range_filter_module.o \
objs/src/http/modules/ngx_http_gzip_filter_module.o \
objs/src/http/ngx_http_postpone_filter_module.o \
objs/src/http/modules/ngx_http_ssi_filter_module.o \
objs/src/http/modules/ngx_http_charset_filter_module.o \
objs/src/http/modules/ngx_http_userid_filter_module.o \
objs/src/http/modules/ngx_http_headers_filter_module.o \
objs/src/http/ngx_http_copy_filter_module.o \
objs/src/http/modules/ngx_http_not_modified_filter_module.o \
objs/src/http/v2/ngx_http_v2.o \
objs/src/http/v2/ngx_http_v2_table.o \
objs/src/http/v2/ngx_http_v2_huff_decode.o \
objs/src/http/v2/ngx_http_v2_huff_encode.o \
objs/src/http/v2/ngx_http_v2_module.o \
objs/src/http/modules/ngx_http_static_module.o \
objs/src/http/modules/ngx_http_autoindex_module.o \
objs/src/http/modules/ngx_http_index_module.o \
objs/src/http/modules/ngx_http_auth_basic_module.o \
objs/src/http/modules/ngx_http_access_module.o \
objs/src/http/modules/ngx_http_limit_conn_module.o \
objs/src/http/modules/ngx_http_limit_req_module.o \
objs/src/http/modules/ngx_http_geo_module.o \
objs/src/http/modules/ngx_http_map_module.o \
objs/src/http/modules/ngx_http_split_clients_module.o \
objs/src/http/modules/ngx_http_referer_module.o \
objs/src/http/modules/ngx_http_rewrite_module.o \
objs/src/http/modules/ngx_http_ssl_module.o \
objs/src/http/modules/ngx_http_proxy_module.o \
objs/src/http/modules/ngx_http_fastcgi_module.o \
objs/src/http/modules/ngx_http_uwsgi_module.o \
objs/src/http/modules/ngx_http_scgi_module.o \
objs/src/http/modules/ngx_http_memcached_module.o \
objs/src/http/modules/ngx_http_empty_gif_module.o \
objs/src/http/modules/ngx_http_browser_module.o \
objs/src/http/modules/ngx_http_upstream_hash_module.o \
objs/src/http/modules/ngx_http_upstream_ip_hash_module.o \
objs/src/http/modules/ngx_http_upstream_least_conn_module.o \
objs/src/http/modules/ngx_http_upstream_keepalive_module.o \
objs/src/http/modules/ngx_http_upstream_zone_module.o \
objs/src/http/modules/ngx_http_stub_status_module.o \
objs/addon/nginx-module/ngx_http_groonga_module.o \
objs/addon/src/ndk.o \
objs/addon/http/ngx_http_mruby_module.o \
objs/addon/http/ngx_http_mruby_core.o \
objs/addon/http/ngx_http_mruby_init.o \
objs/addon/http/ngx_http_mruby_request.o \
objs/addon/http/ngx_http_mruby_var.o \
objs/addon/http/ngx_http_mruby_connection.o \
objs/addon/http/ngx_http_mruby_server.o \
objs/addon/http/ngx_http_mruby_filter.o \
objs/addon/http/ngx_http_mruby_upstream.o \
objs/addon/http/ngx_http_mruby_ssl.o \
objs/ngx_modules.o \
-Wl,-z,relro -Wl,-z,now -ldl -lpthread -lcrypt -L/<<PKGBUILDDIR>>/lib/.libs -L/<<PKGBUILDDIR>>/vendor/onigmo-source/.libs -lgroonga -L/<<PKGBUILDDIR>>/vendor/mruby/.libs -lmruby -lm -L/usr/local/lib -L -lmruby -lpcre -lssl -lcrypto -ldl -lz \
-Wl,-E
make[6]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src/httpd'
make[4]: Entering directory '/<<PKGBUILDDIR>>/src'
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I.. -I../include -I../lib   -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../vendor/mruby-source/include  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o groonga-groonga.o `test -f 'groonga.c' || echo './'`groonga.c
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I.. -I../include -I../lib   -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o groonga_benchmark.o groonga_benchmark.c
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I.. -I../include -I../lib   -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o grndb.o grndb.c
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I.. -I../include -I../lib   -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o grnslap.o grnslap.c
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:761,
                 from ../lib/grn_str.h:21,
                 from groonga_benchmark.c:40:
groonga_benchmark.c: In function 'report_command':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:351:11: note: in expansion of macro 'GRN_TIME_VALUE'
   start = GRN_TIME_VALUE(start_time) - GRN_TIME_VALUE(&grntest_starttime);
           ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:351:40: note: in expansion of macro 'GRN_TIME_VALUE'
   start = GRN_TIME_VALUE(start_time) - GRN_TIME_VALUE(&grntest_starttime);
                                        ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:352:9: note: in expansion of macro 'GRN_TIME_VALUE'
   end = GRN_TIME_VALUE(end_time) - GRN_TIME_VALUE(&grntest_starttime);
         ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:352:36: note: in expansion of macro 'GRN_TIME_VALUE'
   end = GRN_TIME_VALUE(end_time) - GRN_TIME_VALUE(&grntest_starttime);
                                    ^~~~~~~~~~~~~~
groonga_benchmark.c: In function 'output_result_final':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:381:13: note: in expansion of macro 'GRN_TIME_VALUE'
   latency = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_starttime);
             ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:381:41: note: in expansion of macro 'GRN_TIME_VALUE'
   latency = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_starttime);
                                         ^~~~~~~~~~~~~~
groonga_benchmark.c: In function 'open_socket':
groonga_benchmark.c:474:13: warning: cast increases required alignment of target type [-Wcast-align]
   inaddr = *(u_long*)(servhost->h_addr_list[0]);
             ^
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:761,
                 from ../lib/grn_str.h:21,
                 from groonga_benchmark.c:40:
groonga_benchmark.c: In function 'do_load_command':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:764:19: note: in expansion of macro 'GRN_TIME_VALUE'
     *load_start = GRN_TIME_VALUE(&start_time);
                   ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:777:14: note: in expansion of macro 'GRN_TIME_VALUE'
       self = GRN_TIME_VALUE(&end_time) - *load_start;
              ^~~~~~~~~~~~~~
groonga_benchmark.c: In function 'do_command':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:863:14: note: in expansion of macro 'GRN_TIME_VALUE'
       self = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&start_time);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:863:42: note: in expansion of macro 'GRN_TIME_VALUE'
       self = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&start_time);
                                          ^~~~~~~~~~~~~~
groonga_benchmark.c: In function 'worker_sub':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
groonga_benchmark.c:1037:19: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         command = GRN_PTR_VALUE_AT(commands, i);
                   ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:1065:24: note: in expansion of macro 'GRN_TIME_VALUE'
   total_elapsed_time = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_starttime);
                        ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:1065:52: note: in expansion of macro 'GRN_TIME_VALUE'
   total_elapsed_time = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_starttime);
                                                    ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:1066:22: note: in expansion of macro 'GRN_TIME_VALUE'
   job_elapsed_time = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_jobs_start);
                      ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:1066:50: note: in expansion of macro 'GRN_TIME_VALUE'
   job_elapsed_time = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_jobs_start);
                                                  ^~~~~~~~~~~~~~
grnslap.c: In function 'msg_handler':
grnslap.c:161:16: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *m = (grn_msg *)msg;
                ^
grnslap.c:162:19: warning: cast increases required alignment of target type [-Wcast-align]
   grn_com *com = ((grn_msg *)msg)->u.peer;
                   ^
groonga_benchmark.c: In function 'main':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:3095:18: note: in expansion of macro 'GRN_TIME_VALUE'
   sec = (time_t)(GRN_TIME_VALUE(&grntest_starttime)/1000000);
                  ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:3103:15: note: in expansion of macro 'GRN_TIME_VALUE'
               GRN_TIME_VALUE(&grntest_starttime), grn_get_version());
               ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:3108:15: note: in expansion of macro 'GRN_TIME_VALUE'
               GRN_TIME_VALUE(&grntest_starttime), grn_get_version());
               ^~~~~~~~~~~~~~
groonga.c: In function 'request_timer_register':
groonga.c:596:10: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
   return (void *)(uint64_t)id;
          ^
groonga.c: In function 'request_timer_unregister':
groonga.c:604:23: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
   grn_id id = (grn_id)(uint64_t)timer_id;
                       ^
groonga.c: In function 'do_mbreq':
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:1934:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:761,
                 from groonga.c:29:
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:1944:20: note: in expansion of macro 'GRN_UINT32_VALUE'
           expire = GRN_UINT32_VALUE(&expire_buf);
                    ^~~~~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:1950:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:1957:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:1960:14: warning: cast increases required alignment of target type [-Wcast-align]
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&cas_buf);
              ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
groonga.c:1960:43: note: in expansion of macro 'GRN_UINT64_VALUE'
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&cas_buf);
                                           ^~~~~~~~~~~~~~~~
groonga.c:1982:26: warning: cast increases required alignment of target type [-Wcast-align]
       uint32_t flags = *((uint32_t *)body);
                          ^
In file included from /usr/include/netdb.h:27:0,
                 from ../lib/grn_com.h:26,
                 from groonga.c:31:
groonga.c:1983:33: warning: cast increases required alignment of target type [-Wcast-align]
       uint32_t expire = ntohl(*((uint32_t *)(body + 4)));
                                 ^
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:1997:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I.. -I../include -I../lib   -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o groonga_mruby.o groonga_mruby.c
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2003:13: note: in expansion of macro 'GRN_MSG_MBRES'
             GRN_MSG_MBRES({
             ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2029:15: note: in expansion of macro 'GRN_MSG_MBRES'
               GRN_MSG_MBRES({
               ^~~~~~~~~~~~~
groonga.c:2030:18: warning: cast increases required alignment of target type [-Wcast-align]
                 ((grn_msg *)re)->header.cas = cas_id;
                  ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:761,
                 from groonga.c:29:
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2043:23: note: in expansion of macro 'GRN_UINT32_VALUE'
             oexpire = GRN_UINT32_VALUE(&uint32_buf);
                       ^~~~~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2050:17: note: in expansion of macro 'GRN_MSG_MBRES'
                 GRN_MSG_MBRES({
                 ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2057:15: note: in expansion of macro 'GRN_MSG_MBRES'
               GRN_MSG_MBRES({
               ^~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:761,
                 from groonga.c:29:
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2068:34: note: in expansion of macro 'GRN_UINT64_VALUE'
               if (header->cas != GRN_UINT64_VALUE(&cas_buf)) {
                                  ^~~~~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2069:17: note: in expansion of macro 'GRN_MSG_MBRES'
                 GRN_MSG_MBRES({
                 ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2095:17: note: in expansion of macro 'GRN_MSG_MBRES'
                 GRN_MSG_MBRES({
                 ^~~~~~~~~~~~~
groonga.c:2096:20: warning: cast increases required alignment of target type [-Wcast-align]
                   ((grn_msg *)re)->header.cas = cas_id;
                    ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2117:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2122:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
In file included from /usr/include/netdb.h:27:0,
                 from ../lib/grn_com.h:26,
                 from groonga.c:31:
groonga.c:2141:33: warning: cast increases required alignment of target type [-Wcast-align]
       uint32_t expire = ntohl(*((uint32_t *)(body + 16)));
                                 ^
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2151:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:761,
                 from groonga.c:29:
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2168:21: note: in expansion of macro 'GRN_UINT32_VALUE'
           oexpire = GRN_UINT32_VALUE(&uint32_buf);
                     ^~~~~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2173:15: note: in expansion of macro 'GRN_MSG_MBRES'
               GRN_MSG_MBRES({
               ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2201:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:2204:28: warning: cast increases required alignment of target type [-Wcast-align]
           grn_hton(&delta, (uint64_t *)GRN_BULK_HEAD(re), 8);
                            ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
groonga.c:2204:11: note: in expansion of macro 'grn_hton'
           grn_hton(&delta, (uint64_t *)GRN_BULK_HEAD(re), 8);
           ^~~~~~~~
In file included from /usr/include/netdb.h:27:0,
                 from ../lib/grn_com.h:26,
                 from groonga.c:31:
groonga.c:2221:26: warning: cast increases required alignment of target type [-Wcast-align]
         expire = ntohl(*((uint32_t *)(body)));
                          ^
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2243:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2253:5: note: in expansion of macro 'GRN_MSG_MBRES'
     GRN_MSG_MBRES({
     ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2268:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:761,
                 from groonga.c:29:
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2277:18: note: in expansion of macro 'GRN_UINT32_VALUE'
         expire = GRN_UINT32_VALUE(&uint32_buf);
                  ^~~~~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2281:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2288:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:2292:14: warning: cast increases required alignment of target type [-Wcast-align]
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&uint64_buf);
              ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
groonga.c:2292:43: note: in expansion of macro 'GRN_UINT64_VALUE'
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&uint64_buf);
                                           ^~~~~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2314:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2324:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2333:7: note: in expansion of macro 'GRN_MSG_MBRES'
       GRN_MSG_MBRES({
       ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2344:5: note: in expansion of macro 'GRN_MSG_MBRES'
     GRN_MSG_MBRES({
     ^~~~~~~~~~~~~
groonga.c: In function 'h_worker':
groonga.c:2416:14: warning: cast increases required alignment of target type [-Wcast-align]
     hc.msg = (grn_msg *)msg;
              ^
groonga.c: In function 'h_handler':
groonga.c:2437:19: warning: cast increases required alignment of target type [-Wcast-align]
   grn_com *com = ((grn_msg *)msg)->u.peer;
                   ^
groonga.c:2446:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)msg)->u.fd = fd;
      ^
groonga.c: In function 'g_worker':
groonga.c:2515:29: warning: cast increases required alignment of target type [-Wcast-align]
                (edge->msg = (grn_msg *)grn_com_queue_deque(ctx, &edge->recv_new))) {
                             ^
groonga.c: In function 'g_output':
groonga.c:2582:36: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *req = edge->msg, *msg = (grn_msg *)ctx->impl->output.buf;
                                    ^
groonga.c: In function 'g_handler':
groonga.c:2600:19: warning: cast increases required alignment of target type [-Wcast-align]
   grn_com *com = ((grn_msg *)msg)->u.peer;
                   ^
groonga.c:2617:33: warning: cast increases required alignment of target type [-Wcast-align]
     edge = grn_edges_add(ctx, &((grn_msg *)msg)->edge_id, &added);
                                 ^
groonga.c: In function 'send_ready_notify':
groonga.c:792:5: warning: ignoring return value of 'write', declared with attribute warn_unused_result [-Wunused-result]
     write(ready_notify_pipe[PIPE_WRITE],
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           ready_notify_message,
           ~~~~~~~~~~~~~~~~~~~~~
           strlen(ready_notify_message));
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o grndb grndb.o ../lib/libgroonga.la -lmsgpackc -lz -ldl -lpthread -lm  
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o groonga-mruby groonga_mruby.o ../lib/libgroonga.la -lmsgpackc -lz -ldl -lpthread -lm  
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/grndb grndb.o  ../lib/.libs/libgroonga.so -lmsgpackc -lz -ldl -lpthread -lm
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/groonga-mruby groonga_mruby.o  ../lib/.libs/libgroonga.so -lmsgpackc -lz -ldl -lpthread -lm
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o grnslap grnslap.o ../lib/libgroonga.la -lmsgpackc -lz -ldl -lpthread -lm  
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/grnslap grnslap.o  ../lib/.libs/libgroonga.so -lmsgpackc -lz -ldl -lpthread -lm
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o groonga-benchmark groonga_benchmark.o ../lib/libgroonga.la -lmsgpackc -lz -ldl -lpthread -lm  
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/groonga-benchmark groonga_benchmark.o  ../lib/.libs/libgroonga.so -lmsgpackc -lz -ldl -lpthread -lm
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o groonga groonga-groonga.o ../lib/libgroonga.la  -lmsgpackc -lz -ldl -lpthread -lm  
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/groonga groonga-groonga.o  ../lib/.libs/libgroonga.so -lmsgpackc -lz -ldl -lpthread -lm
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/src'
Making all in examples
make[3]: Entering directory '/<<PKGBUILDDIR>>/examples'
Making all in dictionary
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary'
Making all in edict
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/edict'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/edict'
Making all in eijiro
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/eijiro'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/eijiro'
Making all in gene95
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/gene95'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/gene95'
Making all in jmdict
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/jmdict'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/jmdict'
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/examples'
Making all in test
make[3]: Entering directory '/<<PKGBUILDDIR>>/test'
Making all in unit
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/unit'
Making all in lib
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/lib'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/lib'
Making all in fixtures
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
Making all in stress
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/stress'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/stress'
Making all in inverted-index
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/inverted-index'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/inverted-index'
Making all in plugins
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/plugins'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/plugins'
Making all in geo
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/geo'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/geo'
Making all in story
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
Making all in taiyaki
make[7]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story/taiyaki'
make[7]: Nothing to be done for 'all'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story/taiyaki'
make[7]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[7]: Nothing to be done for 'all-am'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
make[6]: Nothing to be done for 'all-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
Making all in util
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/util'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/util'
Making all in core
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core'
Making all in dat
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core/dat'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core/dat'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core'
make[6]: Nothing to be done for 'all-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core'
Making all in story
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/story'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/story'
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/unit'
Making all in command
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/command'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/command'
make[4]: Entering directory '/<<PKGBUILDDIR>>/test'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/test'
Making all in benchmark
make[3]: Entering directory '/<<PKGBUILDDIR>>/benchmark'
Making all in fixtures
make[4]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
Making all in geo-select
make[5]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures/geo-select'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures/geo-select'
make[5]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
Making all in lib
make[4]: Entering directory '/<<PKGBUILDDIR>>/benchmark/lib'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/lib'
make[4]: Entering directory '/<<PKGBUILDDIR>>/benchmark'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/benchmark'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/benchmark'
Making all in packages
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages'
Making all in apt
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/apt'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/apt'
Making all in ubuntu
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/ubuntu'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/ubuntu'
Making all in rpm
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm'
Making all in centos
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm/centos'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm/centos'
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm'
Making all in yum
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/yum'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/yum'
Making all in source
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/source'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/source'
Making all in windows
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/windows'
Making all in patches
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/windows/patches'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows/patches'
Making all in language-files
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/windows/language-files'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows/language-files'
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/windows'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages'
Making all in data
make[3]: Entering directory '/<<PKGBUILDDIR>>/data'
Making all in html
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/html'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/html'
Making all in munin
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/munin'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/munin'
Making all in init.d
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/init.d'
Making all in centos
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos'
Making all in sysconfig
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos/sysconfig'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos/sysconfig'
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[6]: Nothing to be done for 'all-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/init.d'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d'
Making all in logrotate.d
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d'
Making all in centos
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d/centos'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d/centos'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d'
Making all in systemd
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/systemd'
Making all in centos
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos'
Making all in sysconfig
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos/sysconfig'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos/sysconfig'
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[6]: Nothing to be done for 'all-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/systemd'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd'
Making all in scripts
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/scripts'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/scripts'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data'
Making all in tools
make[3]: Entering directory '/<<PKGBUILDDIR>>/tools'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/<<PKGBUILDDIR>>/tools'
Making all in doc
make[3]: Entering directory '/<<PKGBUILDDIR>>/doc'
make  all-recursive
make[4]: Entering directory '/<<PKGBUILDDIR>>/doc'
Making all in locale
make[5]: Entering directory '/<<PKGBUILDDIR>>/doc/locale'
Making all in en
make[6]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en'
make  all-recursive
make[7]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en'
Making all in LC_MESSAGES
make[8]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en/LC_MESSAGES'
make  all-am
make[9]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en/LC_MESSAGES'
make[9]: Nothing to be done for 'all-am'.
make[9]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en/LC_MESSAGES'
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en/LC_MESSAGES'
make[8]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en'
make[8]: Nothing to be done for 'all-am'.
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en'
Making all in ja
make[6]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make  all-recursive
make[7]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja'
Making all in LC_MESSAGES
make[8]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make  all-am
make[9]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[9]: Nothing to be done for 'all-am'.
make[9]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[8]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[8]: Nothing to be done for 'all-am'.
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[6]: Entering directory '/<<PKGBUILDDIR>>/doc/locale'
make[6]: Nothing to be done for 'all-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale'
make[5]: Entering directory '/<<PKGBUILDDIR>>/doc'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/doc'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/doc'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/doc'
make[3]: Entering directory '/<<PKGBUILDDIR>>'
make[3]: Leaving directory '/<<PKGBUILDDIR>>'
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   create-stamp debian/debhelper-build-stamp
 fakeroot debian/rules binary-arch
dh binary-arch
   dh_testroot -a
   dh_prep -a
   dh_installdirs -a
   dh_auto_install -a
	make -j4 install DESTDIR=/<<PKGBUILDDIR>>/debian/tmp AM_UPDATE_INFO_DIR=no
make[1]: Entering directory '/<<PKGBUILDDIR>>'
Making install in build
make[2]: Entering directory '/<<PKGBUILDDIR>>/build'
Making install in cmake_modules
make[3]: Entering directory '/<<PKGBUILDDIR>>/build/cmake_modules'
make[4]: Entering directory '/<<PKGBUILDDIR>>/build/cmake_modules'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/build/cmake_modules'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/build/cmake_modules'
make[3]: Entering directory '/<<PKGBUILDDIR>>/build'
make[4]: Entering directory '/<<PKGBUILDDIR>>/build'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/build'
Making install in include
make[2]: Entering directory '/<<PKGBUILDDIR>>/include'
Making install in groonga
make[3]: Entering directory '/<<PKGBUILDDIR>>/include/groonga'
make[4]: Entering directory '/<<PKGBUILDDIR>>/include/groonga'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/include/groonga/groonga'
 /usr/bin/install -c -m 644 accessor.h array.h column.h command.h config.h dat.h db.h dump.h error.h expr.h file_reader.h hash.h geo.h groonga.h id.h ii.h obj.h operator.h output.h pat.h plugin.h portability.h request_canceler.h request_timer.h scorer.h table.h thread.h time.h token.h tokenizer.h token_filter.h type.h nfkc.h normalizer.h util.h window_function.h windows.h windows_event_logger.h '/<<PKGBUILDDIR>>/debian/tmp/usr/include/groonga/groonga'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/include/groonga'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/include/groonga'
make[3]: Entering directory '/<<PKGBUILDDIR>>/include'
make[4]: Entering directory '/<<PKGBUILDDIR>>/include'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/include/groonga'
 /usr/bin/install -c -m 644 groonga.h '/<<PKGBUILDDIR>>/debian/tmp/usr/include/groonga'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/include'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/include'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/include'
Making install in vendor
make[2]: Entering directory '/<<PKGBUILDDIR>>/vendor'
Making install in lz4
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor/lz4'
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/lz4'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/lz4'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor/lz4'
Making install in onigmo
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo'
cd ../onigmo-source && make all
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make  all-recursive
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
Making all in .
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
Making all in sample
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source/sample'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source/sample'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo'
Making install in mecab
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor/mecab'
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/mecab'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mecab'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mecab'
Making install in message_pack
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor/message_pack'
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/message_pack'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/message_pack'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor/message_pack'
Making install in mruby
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor/mruby'
make  install-am
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/mruby'
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/mruby'
make[5]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/mruby'
 /usr/bin/install -c -m 644 LEGAL '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/mruby'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mruby'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mruby'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mruby'
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor'
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/vendor'
Making install in lib
make[2]: Entering directory '/<<PKGBUILDDIR>>/lib'
make  install-recursive
make[3]: Entering directory '/<<PKGBUILDDIR>>/lib'
Making install in dat
make[4]: Entering directory '/<<PKGBUILDDIR>>/lib/dat'
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/dat'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/dat'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/lib/dat'
Making install in mrb
make[4]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb'
Making install in scripts
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
Making install in command_line
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/command_line'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/command_line'
make[7]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line'
 /usr/bin/install -c -m 644 grndb.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/command_line'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/command_line'
Making install in context
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/context'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/context'
make[7]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context'
 /usr/bin/install -c -m 644 error_level.rb rc.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/context'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/context'
Making install in expression_tree
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/expression_tree'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/expression_tree'
make[7]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree'
 /usr/bin/install -c -m 644 accessor.rb binary_operation.rb constant.rb function_call.rb index_column.rb logical_operation.rb options.rb procedure.rb variable.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/expression_tree'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/expression_tree'
Making install in initialize
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/initialize'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/initialize'
make[7]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize'
 /usr/bin/install -c -m 644 pre.rb post.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/initialize'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/initialize'
Making install in logger
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/logger'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/logger'
make[7]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger'
 /usr/bin/install -c -m 644 level.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/logger'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/logger'
Making install in query_logger
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/query_logger'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/query_logger'
make[7]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger'
 /usr/bin/install -c -m 644 flag.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/query_logger'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/query_logger'
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[7]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby'
 /usr/bin/install -c -m 644 accessor.rb backtrace_entry.rb command.rb command_line_parser.rb context.rb database.rb error.rb eval_context.rb expression.rb expression_rewriter.rb expression_rewriters.rb expression_size_estimator.rb expression_tree.rb expression_tree_builder.rb fixed_size_column.rb id.rb index_column.rb index_cursor.rb index_info.rb logger.rb object.rb operator.rb plugin_loader.rb query_logger.rb record.rb require.rb scan_info.rb scan_info_builder.rb scan_info_data.rb scan_info_search_index.rb table.rb table_cursor.rb variable_size_column.rb writer.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb'
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb'
Making install in proc
make[4]: Entering directory '/<<PKGBUILDDIR>>/lib/proc'
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/proc'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/proc'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/lib/proc'
Making install in ts
make[4]: Entering directory '/<<PKGBUILDDIR>>/lib/ts'
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/ts'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/ts'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/lib/ts'
make[4]: Entering directory '/<<PKGBUILDDIR>>/lib'
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib'
make[5]: Nothing to be done for 'install-data-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf'
 /bin/bash ../libtool   --mode=install /usr/bin/install -c   libgroonga.la '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf'
libtool: install: /usr/bin/install -c .libs/libgroonga.so.0.0.0 /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/libgroonga.so.0.0.0
libtool: install: (cd /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf && { ln -s -f libgroonga.so.0.0.0 libgroonga.so.0 || { rm -f libgroonga.so.0 && ln -s libgroonga.so.0.0.0 libgroonga.so.0; }; })
libtool: install: (cd /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf && { ln -s -f libgroonga.so.0.0.0 libgroonga.so || { rm -f libgroonga.so && ln -s libgroonga.so.0.0.0 libgroonga.so; }; })
libtool: install: /usr/bin/install -c .libs/libgroonga.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/libgroonga.la
libtool: warning: remember to run 'libtool --finish /usr/lib/arm-linux-gnueabihf'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/lib'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/lib'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/lib'
Making install in plugins
make[2]: Entering directory '/<<PKGBUILDDIR>>/plugins'
Making install in tokenizers
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/tokenizers'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/tokenizers'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers'
 /bin/bash ../../libtool   --mode=install /usr/bin/install -c   mecab.la '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers'
libtool: warning: relinking 'mecab.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/tokenizers; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -L/usr/lib/arm-linux-gnueabihf -Wl,-z,relro -Wl,-z,now -o mecab.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers mecab_la-mecab.lo ../../lib/libgroonga.la -lmecab ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/mecab_la-mecab.o   -L/usr/lib/arm-linux-gnueabihf -lmecab -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,mecab.so -o .libs/mecab.so
libtool: install: /usr/bin/install -c .libs/mecab.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers/mecab.so
libtool: install: /usr/bin/install -c .libs/mecab.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers/mecab.la
libtool: warning: remember to run 'libtool --finish /usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/tokenizers'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/tokenizers'
Making install in suggest
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/suggest'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/suggest'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest'
 /bin/bash ../../libtool   --mode=install /usr/bin/install -c   suggest.la '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest'
libtool: warning: relinking 'suggest.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/suggest; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o suggest.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest suggest.lo ../../lib/libgroonga.la -lmsgpackc -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/suggest.o   -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga -lmsgpackc  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,suggest.so -o .libs/suggest.so
libtool: install: /usr/bin/install -c .libs/suggest.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest/suggest.so
libtool: install: /usr/bin/install -c .libs/suggest.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest/suggest.la
libtool: warning: remember to run 'libtool --finish /usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/suggest'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/suggest'
Making install in query_expanders
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/query_expanders'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/query_expanders'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders'
 /bin/bash ../../libtool   --mode=install /usr/bin/install -c   tsv.la '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders'
libtool: warning: relinking 'tsv.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/query_expanders; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o tsv.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders tsv.lo ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/tsv.o   -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,tsv.so -o .libs/tsv.so
libtool: install: /usr/bin/install -c .libs/tsv.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders/tsv.so
libtool: install: /usr/bin/install -c .libs/tsv.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders/tsv.la
libtool: warning: remember to run 'libtool --finish /usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/query_expanders'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/query_expanders'
Making install in ruby
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/ruby'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/ruby'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/ruby'
 /usr/bin/install -c -m 644 eval.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/ruby'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/ruby'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/ruby'
Making install in token_filters
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/token_filters'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/token_filters'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters'
 /bin/bash ../../libtool   --mode=install /usr/bin/install -c   stop_word.la stem.la '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters'
libtool: warning: relinking 'stop_word.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/token_filters; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o stop_word.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters stop_word.lo ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/stop_word.o   -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,stop_word.so -o .libs/stop_word.so
libtool: install: /usr/bin/install -c .libs/stop_word.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stop_word.so
libtool: install: /usr/bin/install -c .libs/stop_word.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stop_word.la
libtool: warning: relinking 'stem.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/token_filters; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o stem.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters stem_la-stem.lo ../../lib/libgroonga.la -lstemmer ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/stem_la-stem.o   -lstemmer -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,stem.so -o .libs/stem.so
libtool: install: /usr/bin/install -c .libs/stem.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stem.so
libtool: install: /usr/bin/install -c .libs/stem.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stem.la
libtool: warning: remember to run 'libtool --finish /usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/token_filters'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/token_filters'
Making install in sharding
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/sharding'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/sharding'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding'
 /usr/bin/install -c -m 644 logical_count.rb logical_enumerator.rb logical_parameters.rb logical_range_filter.rb logical_select.rb logical_shard_list.rb logical_table_remove.rb parameters.rb range_expression_builder.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/sharding'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/sharding'
Making install in functions
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/functions'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/functions'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions'
 /bin/bash ../../libtool   --mode=install /usr/bin/install -c   vector.la string.la number.la time.la '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions'
libtool: warning: relinking 'vector.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/functions; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o vector.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions vector.lo ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/vector.o   -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,vector.so -o .libs/vector.so
libtool: install: /usr/bin/install -c .libs/vector.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/vector.so
libtool: install: /usr/bin/install -c .libs/vector.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/vector.la
libtool: warning: relinking 'string.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/functions; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o string.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions string.lo ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/string.o   -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,string.so -o .libs/string.so
libtool: install: /usr/bin/install -c .libs/string.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/string.so
libtool: install: /usr/bin/install -c .libs/string.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/string.la
libtool: warning: relinking 'number.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/functions; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o number.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions number.lo -lm ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/number.o   -lm -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,number.so -o .libs/number.so
libtool: install: /usr/bin/install -c .libs/number.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/number.so
libtool: install: /usr/bin/install -c .libs/number.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/number.la
libtool: warning: relinking 'time.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/functions; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o time.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions time.lo ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/time.o   -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,time.so -o .libs/time.so
libtool: install: /usr/bin/install -c .libs/time.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/time.so
libtool: install: /usr/bin/install -c .libs/time.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/time.la
libtool: warning: remember to run 'libtool --finish /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/functions'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/functions'
Making install in expression_rewriters
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/expression_rewriters'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/expression_rewriters'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/expression_rewriters'
 /usr/bin/install -c -m 644 optimizer.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/expression_rewriters'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/expression_rewriters'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/expression_rewriters'
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins'
 /usr/bin/install -c -m 644 sharding.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/plugins'
Making install in src
make[2]: Entering directory '/<<PKGBUILDDIR>>/src'
Making install in suggest
make[3]: Entering directory '/<<PKGBUILDDIR>>/src/suggest'
make[4]: Entering directory '/<<PKGBUILDDIR>>/src/suggest'
make[4]: Nothing to be done for 'install-data-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/bin'
  /bin/bash ../../libtool   --mode=install /usr/bin/install -c groonga-suggest-create-dataset groonga-suggest-learner groonga-suggest-httpd '/<<PKGBUILDDIR>>/debian/tmp/usr/bin'
libtool: warning: '../../lib/libgroonga.la' has not been installed in '/usr/lib/arm-linux-gnueabihf'
libtool: install: /usr/bin/install -c .libs/groonga-suggest-create-dataset /<<PKGBUILDDIR>>/debian/tmp/usr/bin/groonga-suggest-create-dataset
libtool: warning: '../../lib/libgroonga.la' has not been installed in '/usr/lib/arm-linux-gnueabihf'
libtool: install: /usr/bin/install -c .libs/groonga-suggest-learner /<<PKGBUILDDIR>>/debian/tmp/usr/bin/groonga-suggest-learner
libtool: warning: '../../lib/libgroonga.la' has not been installed in '/usr/lib/arm-linux-gnueabihf'
libtool: install: /usr/bin/install -c .libs/groonga-suggest-httpd /<<PKGBUILDDIR>>/debian/tmp/usr/bin/groonga-suggest-httpd
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src/suggest'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/src/suggest'
Making install in httpd
make[3]: Entering directory '/<<PKGBUILDDIR>>/src/httpd'
(cd ../../vendor/nginx-1.11.8 && make build)
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make -f objs/Makefile
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make[5]: Nothing to be done for 'build'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make[4]: Entering directory '/<<PKGBUILDDIR>>/src/httpd'
(cd ../../vendor/nginx-1.11.8 && make install)
make[4]: Nothing to be done for 'install-data-am'.
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make -f objs/Makefile install
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
test -d '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd' || mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
test -d '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin' \
	|| mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin'
test ! -f '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin/groonga-httpd' \
	|| mv '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin/groonga-httpd' \
		'/<<PKGBUILDDIR>>/debian/tmp/usr/sbin/groonga-httpd.old'
cp objs/nginx '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin/groonga-httpd'
test -d '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd' \
	|| mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/koi-win '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/koi-utf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/win-utf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/mime.types' \
	|| cp conf/mime.types '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/mime.types '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/mime.types.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/fastcgi_params' \
	|| cp conf/fastcgi_params '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/fastcgi_params \
	'/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/fastcgi_params.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/fastcgi.conf' \
	|| cp conf/fastcgi.conf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/fastcgi.conf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/fastcgi.conf.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/uwsgi_params' \
	|| cp conf/uwsgi_params '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/uwsgi_params \
	'/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/uwsgi_params.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/scgi_params' \
	|| cp conf/scgi_params '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/scgi_params \
	'/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/scgi_params.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/groonga-httpd.conf' \
	|| cp conf/nginx.conf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/groonga-httpd.conf'
cp conf/nginx.conf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/nginx.conf.default'
test -d '/<<PKGBUILDDIR>>/debian/tmp/var/run' \
	|| mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/var/run'
test -d '/<<PKGBUILDDIR>>/debian/tmp/var/log/groonga/httpd' \
	|| mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/var/log/groonga/httpd'
test -d '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/html' \
	|| cp -R docs/html '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
test -d '/<<PKGBUILDDIR>>/debian/tmp/var/log/groonga/httpd' \
	|| mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/var/log/groonga/httpd'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src/httpd'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/src/httpd'
make[3]: Entering directory '/<<PKGBUILDDIR>>/src'
make[4]: Entering directory '/<<PKGBUILDDIR>>/src'
make[4]: Nothing to be done for 'install-data-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/bin'
  /bin/bash ../libtool   --mode=install /usr/bin/install -c groonga groonga-benchmark grndb '/<<PKGBUILDDIR>>/debian/tmp/usr/bin'
libtool: warning: '../lib/libgroonga.la' has not been installed in '/usr/lib/arm-linux-gnueabihf'
libtool: install: /usr/bin/install -c .libs/groonga /<<PKGBUILDDIR>>/debian/tmp/usr/bin/groonga
libtool: warning: '../lib/libgroonga.la' has not been installed in '/usr/lib/arm-linux-gnueabihf'
libtool: install: /usr/bin/install -c .libs/groonga-benchmark /<<PKGBUILDDIR>>/debian/tmp/usr/bin/groonga-benchmark
libtool: warning: '../lib/libgroonga.la' has not been installed in '/usr/lib/arm-linux-gnueabihf'
libtool: install: /usr/bin/install -c .libs/grndb /<<PKGBUILDDIR>>/debian/tmp/usr/bin/grndb
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/src'
Making install in examples
make[2]: Entering directory '/<<PKGBUILDDIR>>/examples'
Making install in dictionary
make[3]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary'
Making install in edict
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/edict'
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/edict'
make[5]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/edict'
 /usr/bin/install -c edict2grn.rb edict-import.sh '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/edict'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/edict'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/edict'
Making install in eijiro
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/eijiro'
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/eijiro'
make[5]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/eijiro'
 /usr/bin/install -c eijiro2grn.rb eijiro-import.sh '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/eijiro'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/eijiro'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/eijiro'
Making install in gene95
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/gene95'
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/gene95'
make[5]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/gene95'
 /usr/bin/install -c gene2grn.rb gene-import.sh '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/gene95'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/gene95'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/gene95'
Making install in jmdict
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/jmdict'
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/jmdict'
make[5]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/jmdict'
 /usr/bin/install -c jmdict.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/jmdict'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/jmdict'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/jmdict'
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[5]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary'
 /usr/bin/install -c init-db.sh '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/css/smoothness'
 /usr/bin/install -c -m 644  html/css/smoothness/jquery-ui-1.8.12.custom.css '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/css/smoothness'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/css'
 /usr/bin/install -c -m 644  html/css/dictionary.css '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/css'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/js'
 /usr/bin/install -c -m 644  html/js/dictionary.js html/js/jquery-1.7.2.js html/js/jquery-ui-1.8.18.custom.js '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/js'
 /usr/bin/install -c -m 644  readme.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/.'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html'
 /usr/bin/install -c -m 644  html/index.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/css/smoothness/images'
 /usr/bin/install -c -m 644  html/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png html/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png html/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png html/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png html/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png html/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png html/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png html/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png html/css/smoothness/images/ui-icons_222222_256x240.png html/css/smoothness/images/ui-icons_2e83ff_256x240.png html/css/smoothness/images/ui-icons_454545_256x240.png html/css/smoothness/images/ui-icons_888888_256x240.png html/css/smoothness/images/ui-icons_cd0a0a_256x240.png '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/css/smoothness/images'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[3]: Entering directory '/<<PKGBUILDDIR>>/examples'
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/examples'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/examples'
Making install in test
make[2]: Entering directory '/<<PKGBUILDDIR>>/test'
Making install in unit
make[3]: Entering directory '/<<PKGBUILDDIR>>/test/unit'
Making install in lib
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/unit/lib'
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/lib'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/lib'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/lib'
Making install in fixtures
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
Making install in stress
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/stress'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/stress'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/stress'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/stress'
Making install in inverted-index
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/inverted-index'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/inverted-index'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/inverted-index'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/inverted-index'
Making install in plugins
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/plugins'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/plugins'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/plugins'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/plugins'
Making install in geo
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/geo'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/geo'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/geo'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/geo'
Making install in story
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
Making install in taiyaki
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story/taiyaki'
make[7]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story/taiyaki'
make[7]: Nothing to be done for 'install-exec-am'.
make[7]: Nothing to be done for 'install-data-am'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story/taiyaki'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story/taiyaki'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[7]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[7]: Nothing to be done for 'install-exec-am'.
make[7]: Nothing to be done for 'install-data-am'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
Making install in util
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/unit/util'
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/util'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/util'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/util'
Making install in core
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core'
Making install in dat
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core/dat'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core/dat'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core/dat'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core/dat'
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core'
Making install in story
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/unit/story'
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/story'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/story'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/story'
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/unit'
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/unit'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/test/unit'
Making install in command
make[3]: Entering directory '/<<PKGBUILDDIR>>/test/command'
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/command'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/command'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/test/command'
make[3]: Entering directory '/<<PKGBUILDDIR>>/test'
make[4]: Entering directory '/<<PKGBUILDDIR>>/test'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/test'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/test'
Making install in benchmark
make[2]: Entering directory '/<<PKGBUILDDIR>>/benchmark'
Making install in fixtures
make[3]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
Making install in geo-select
make[4]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures/geo-select'
make[5]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures/geo-select'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures/geo-select'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures/geo-select'
make[4]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
make[5]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
Making install in lib
make[3]: Entering directory '/<<PKGBUILDDIR>>/benchmark/lib'
make[4]: Entering directory '/<<PKGBUILDDIR>>/benchmark/lib'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/lib'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/lib'
make[3]: Entering directory '/<<PKGBUILDDIR>>/benchmark'
make[4]: Entering directory '/<<PKGBUILDDIR>>/benchmark'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/benchmark'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/benchmark'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/benchmark'
Making install in packages
make[2]: Entering directory '/<<PKGBUILDDIR>>/packages'
Making install in apt
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages/apt'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/apt'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/apt'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages/apt'
Making install in ubuntu
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages/ubuntu'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/ubuntu'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/ubuntu'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages/ubuntu'
Making install in rpm
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm'
Making install in centos
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm/centos'
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm/centos'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm/centos'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm/centos'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm'
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm'
Making install in yum
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages/yum'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/yum'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/yum'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages/yum'
Making install in source
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages/source'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/source'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/source'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages/source'
Making install in windows
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages/windows'
Making install in patches
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/windows/patches'
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/windows/patches'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows/patches'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows/patches'
Making install in language-files
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/windows/language-files'
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/windows/language-files'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows/language-files'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows/language-files'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/windows'
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/windows'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows'
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/packages'
Making install in data
make[2]: Entering directory '/<<PKGBUILDDIR>>/data'
Making install in html
make[3]: Entering directory '/<<PKGBUILDDIR>>/data/html'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/html'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/css/redmond/images'
 /usr/bin/install -c -m 644  admin/css/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png admin/css/redmond/images/ui-bg_flat_55_fbec88_40x100.png admin/css/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png admin/css/redmond/images/ui-bg_glass_85_dfeffc_1x400.png admin/css/redmond/images/ui-bg_glass_95_fef1ec_1x400.png admin/css/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png admin/css/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png admin/css/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png admin/css/redmond/images/ui-icons_217bc0_256x240.png admin/css/redmond/images/ui-icons_2e83ff_256x240.png admin/css/redmond/images/ui-icons_469bdd_256x240.png admin/css/redmond/images/ui-icons_6da8d5_256x240.png admin/css/redmond/images/ui-icons_cd0a0a_256x240.png admin/css/redmond/images/ui-icons_d8e7f3_256x240.png admin/css/redmond/images/ui-icons_f9bd01_256x240.png '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/css/redmond/images'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/images'
 /usr/bin/install -c -m 644  admin/images/groonga.png admin/images/groonga.svg admin/images/loading.gif '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/images'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/js'
 /usr/bin/install -c -m 644  admin/js/groonga-admin.ja.js admin/js/groonga-admin.js admin/js/jquery-1.7.2.js admin/js/jquery-ui-1.8.18.custom.js admin/js/jquery.flot-0.8.3.js admin/js/jquery.flot.license.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/js'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/css/redmond'
 /usr/bin/install -c -m 644  admin/css/redmond/jquery-ui-1.8.18.custom.css '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/css/redmond'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/css'
 /usr/bin/install -c -m 644  admin/css/groonga-admin.css '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/css'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin'
 /usr/bin/install -c -m 644  admin/favicon.ico admin/favicon.png admin/favicon.svg admin/index.html admin/index.ja.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/html'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data/html'
Making install in munin
make[3]: Entering directory '/<<PKGBUILDDIR>>/data/munin'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/munin'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/munin/plugins'
 /usr/bin/install -c groonga_cpu_load_ groonga_cpu_time_ groonga_status_ groonga_memory_ groonga_n_records_ groonga_query_performance_ groonga_disk_ groonga_throughput_ '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/munin/plugins'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/munin'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data/munin'
Making install in init.d
make[3]: Entering directory '/<<PKGBUILDDIR>>/data/init.d'
Making install in centos
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos'
Making install in sysconfig
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos/sysconfig'
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos/sysconfig'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos/sysconfig'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos/sysconfig'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/init.d'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/init.d'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d'
Making install in logrotate.d
make[3]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d'
Making install in centos
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d/centos'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d/centos'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d/centos'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d/centos'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d'
Making install in systemd
make[3]: Entering directory '/<<PKGBUILDDIR>>/data/systemd'
Making install in centos
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos'
Making install in sysconfig
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos/sysconfig'
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos/sysconfig'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos/sysconfig'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos/sysconfig'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/systemd'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/systemd'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd'
Making install in scripts
make[3]: Entering directory '/<<PKGBUILDDIR>>/data/scripts'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/scripts'
make[4]: Nothing to be done for 'install-data-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin'
 /usr/bin/install -c groonga-httpd-restart '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/scripts'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data/scripts'
make[3]: Entering directory '/<<PKGBUILDDIR>>/data'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga'
 /usr/bin/install -c -m 644 groonga.conf synonyms.tsv '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga'
 /usr/bin/install -c -m 644 groonga-httpd.conf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/data'
Making install in tools
make[2]: Entering directory '/<<PKGBUILDDIR>>/tools'
make[3]: Entering directory '/<<PKGBUILDDIR>>/tools'
make[3]: Nothing to be done for 'install-exec-am'.
make[3]: Nothing to be done for 'install-data-am'.
make[3]: Leaving directory '/<<PKGBUILDDIR>>/tools'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/tools'
Making install in doc
make[2]: Entering directory '/<<PKGBUILDDIR>>/doc'
make  install-recursive
make[3]: Entering directory '/<<PKGBUILDDIR>>/doc'
Making install in locale
make[4]: Entering directory '/<<PKGBUILDDIR>>/doc/locale'
Making install in en
make[5]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en'
make  install-recursive
make[6]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en'
Making install in LC_MESSAGES
make[7]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en/LC_MESSAGES'
make  install-am
make[8]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en/LC_MESSAGES'
make[9]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en/LC_MESSAGES'
make[9]: Nothing to be done for 'install-exec-am'.
make[9]: Nothing to be done for 'install-data-am'.
make[9]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en/LC_MESSAGES'
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en/LC_MESSAGES'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en/LC_MESSAGES'
make[7]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en'
make[8]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en'
make[8]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/commands'
 /usr/bin/install -c -m 644  html/_sources/reference/commands/cache_limit.txt html/_sources/reference/commands/check.txt html/_sources/reference/commands/clearlock.txt html/_sources/reference/commands/column_copy.txt html/_sources/reference/commands/column_create.txt html/_sources/reference/commands/column_list.txt html/_sources/reference/commands/column_remove.txt html/_sources/reference/commands/column_rename.txt html/_sources/reference/commands/config_delete.txt html/_sources/reference/commands/config_get.txt html/_sources/reference/commands/config_set.txt html/_sources/reference/commands/database_unmap.txt html/_sources/reference/commands/define_selector.txt html/_sources/reference/commands/defrag.txt html/_sources/reference/commands/delete.txt html/_sources/reference/commands/dump.txt html/_sources/reference/commands/io_flush.txt html/_sources/reference/commands/load.txt html/_sources/reference/commands/lock_acquire.txt html/_sources/reference/commands/lock_clear.txt html/_sources/reference/commands/lock_release.txt html/_sources/reference/commands/log_level.txt html/_sources/reference/commands/log_put.txt html/_sources/reference/commands/log_reopen.txt html/_sources/reference/commands/logical_count.txt html/_sources/reference/commands/logical_parameters.txt html/_sources/reference/commands/logical_range_filter.txt html/_sources/reference/commands/logical_select.txt html/_sources/reference/commands/logical_shard_list.txt html/_sources/reference/commands/logical_table_remove.txt html/_sources/reference/commands/normalize.txt html/_sources/reference/commands/normalizer_list.txt html/_sources/reference/commands/object_exist.txt html/_sources/reference/commands/object_inspect.txt html/_sources/reference/commands/object_list.txt html/_sources/reference/commands/object_remove.txt html/_sources/reference/commands/plugin_register.txt html/_sources/reference/commands/plugin_unregister.txt html/_sources/reference/commands/query_expand.txt html/_sources/reference/commands/quit.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/commands'
 /usr/bin/install -c -m 644  html/reference/commands/cache_limit.html html/reference/commands/check.html html/reference/commands/clearlock.html html/reference/commands/column_copy.html html/reference/commands/column_create.html html/reference/commands/column_list.html html/reference/commands/column_remove.html html/reference/commands/column_rename.html html/reference/commands/config_delete.html html/reference/commands/config_get.html html/reference/commands/config_set.html html/reference/commands/database_unmap.html html/reference/commands/define_selector.html html/reference/commands/defrag.html html/reference/commands/delete.html html/reference/commands/dump.html html/reference/commands/io_flush.html html/reference/commands/load.html html/reference/commands/lock_acquire.html html/reference/commands/lock_clear.html html/reference/commands/lock_release.html html/reference/commands/log_level.html html/reference/commands/log_put.html html/reference/commands/log_reopen.html html/reference/commands/logical_count.html html/reference/commands/logical_parameters.html html/reference/commands/logical_range_filter.html html/reference/commands/logical_select.html html/reference/commands/logical_shard_list.html html/reference/commands/logical_table_remove.html html/reference/commands/normalize.html html/reference/commands/normalizer_list.html html/reference/commands/object_exist.html html/reference/commands/object_inspect.html html/reference/commands/object_list.html html/reference/commands/object_remove.html html/reference/commands/plugin_register.html html/reference/commands/plugin_unregister.html html/reference/commands/query_expand.html html/reference/commands/quit.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/news'
 /usr/bin/install -c -m 644  html/news/0.x.html html/news/1.0.x.html html/news/1.1.x.html html/news/1.2.x.html html/news/1.3.x.html html/news/2.x.html html/news/3.x.html html/news/4.x.html html/news/5.x.html html/news/senna.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/news'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference'
 /usr/bin/install -c -m 644  html/_sources/reference/alias.txt html/_sources/reference/api.txt html/_sources/reference/cast.txt html/_sources/reference/column.txt html/_sources/reference/command.txt html/_sources/reference/configuration.txt html/_sources/reference/executables.txt html/_sources/reference/function.txt html/_sources/reference/grn_expr.txt html/_sources/reference/indexing.txt html/_sources/reference/log.txt html/_sources/reference/normalizers.txt html/_sources/reference/operations.txt html/_sources/reference/output.txt html/_sources/reference/query_expanders.txt html/_sources/reference/regular_expression.txt html/_sources/reference/scorer.txt html/_sources/reference/sharding.txt html/_sources/reference/suggest.txt html/_sources/reference/tables.txt html/_sources/reference/token_filters.txt html/_sources/reference/tokenizers.txt html/_sources/reference/tuning.txt html/_sources/reference/types.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/grn_expr'
 /usr/bin/install -c -m 644  html/_sources/reference/grn_expr/query_syntax.txt html/_sources/reference/grn_expr/script_syntax.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/grn_expr'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/executables'
 /usr/bin/install -c -m 644  html/_sources/reference/executables/grndb.txt html/_sources/reference/executables/grnslap.txt html/_sources/reference/executables/groonga-benchmark.txt html/_sources/reference/executables/groonga-httpd.txt html/_sources/reference/executables/groonga-server-http.txt html/_sources/reference/executables/groonga-suggest-create-dataset.txt html/_sources/reference/executables/groonga-suggest-httpd.txt html/_sources/reference/executables/groonga-suggest-learner.txt html/_sources/reference/executables/groonga.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/executables'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/troubleshooting'
 /usr/bin/install -c -m 644  html/troubleshooting/different_results_with_the_same_keyword.html html/troubleshooting/mmap_cannot_allocate_memory.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/troubleshooting'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_images'
 /usr/bin/install -c -m 644  html/_images/geo-points.png html/_images/used-when-indexing.png html/_images/used-when-searching.png '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_images'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/tutorial'
 /usr/bin/install -c -m 644  html/tutorial/data.html html/tutorial/drilldown.html html/tutorial/index.html html/tutorial/introduction.html html/tutorial/lexicon.html html/tutorial/match_columns.html html/tutorial/micro_blog.html html/tutorial/network.html html/tutorial/patricia_trie.html html/tutorial/query_expansion.html html/tutorial/search.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/tutorial'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution'
 /usr/bin/install -c -m 644  html/contribution/development.html html/contribution/documentation.html html/contribution/report.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/server'
 /usr/bin/install -c -m 644  html/server/gqtp.html html/server/http.html html/server/memcached.html html/server/package.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/server'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources'
 /usr/bin/install -c -m 644  html/_sources/characteristic.txt html/_sources/client.txt html/_sources/community.txt html/_sources/contribution.txt html/_sources/development.txt html/_sources/index.txt html/_sources/install.txt html/_sources/limitations.txt html/_sources/news.txt html/_sources/reference.txt html/_sources/server.txt html/_sources/spec.txt html/_sources/troubleshooting.txt html/_sources/tutorial.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/development'
 /usr/bin/install -c -m 644  html/_sources/development/travis-ci.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/development'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/suggest'
 /usr/bin/install -c -m 644  html/_sources/reference/suggest/completion.txt html/_sources/reference/suggest/correction.txt html/_sources/reference/suggest/introduction.txt html/_sources/reference/suggest/suggestion.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/suggest'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/commands'
 /usr/bin/install -c -m 644  html/_sources/reference/commands/range_filter.txt html/_sources/reference/commands/register.txt html/_sources/reference/commands/reindex.txt html/_sources/reference/commands/request_cancel.txt html/_sources/reference/commands/ruby_eval.txt html/_sources/reference/commands/ruby_load.txt html/_sources/reference/commands/schema.txt html/_sources/reference/commands/select.txt html/_sources/reference/commands/shutdown.txt html/_sources/reference/commands/status.txt html/_sources/reference/commands/suggest.txt html/_sources/reference/commands/table_copy.txt html/_sources/reference/commands/table_create.txt html/_sources/reference/commands/table_list.txt html/_sources/reference/commands/table_remove.txt html/_sources/reference/commands/table_rename.txt html/_sources/reference/commands/table_tokenize.txt html/_sources/reference/commands/thread_limit.txt html/_sources/reference/commands/tokenize.txt html/_sources/reference/commands/tokenizer_list.txt html/_sources/reference/commands/truncate.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/news'
 /usr/bin/install -c -m 644  html/_sources/news/0.x.txt html/_sources/news/1.0.x.txt html/_sources/news/1.1.x.txt html/_sources/news/1.2.x.txt html/_sources/news/1.3.x.txt html/_sources/news/2.x.txt html/_sources/news/3.x.txt html/_sources/news/4.x.txt html/_sources/news/5.x.txt html/_sources/news/senna.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/news'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference'
 /usr/bin/install -c -m 644  html/reference/alias.html html/reference/api.html html/reference/cast.html html/reference/column.html html/reference/command.html html/reference/configuration.html html/reference/executables.html html/reference/function.html html/reference/grn_expr.html html/reference/indexing.html html/reference/log.html html/reference/normalizers.html html/reference/operations.html html/reference/output.html html/reference/query_expanders.html html/reference/regular_expression.html html/reference/scorer.html html/reference/sharding.html html/reference/suggest.html html/reference/tables.html html/reference/token_filters.html html/reference/tokenizers.html html/reference/tuning.html html/reference/types.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/grn_expr'
 /usr/bin/install -c -m 644  html/reference/grn_expr/query_syntax.html html/reference/grn_expr/script_syntax.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/grn_expr'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/executables'
 /usr/bin/install -c -m 644  html/reference/executables/grndb.html html/reference/executables/grnslap.html html/reference/executables/groonga-benchmark.html html/reference/executables/groonga-httpd.html html/reference/executables/groonga-server-http.html html/reference/executables/groonga-suggest-create-dataset.html html/reference/executables/groonga-suggest-httpd.html html/reference/executables/groonga-suggest-learner.html html/reference/executables/groonga.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/executables'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/install'
 /usr/bin/install -c -m 644  html/_sources/install/centos.txt html/_sources/install/debian.txt html/_sources/install/fedora.txt html/_sources/install/mac_os_x.txt html/_sources/install/others.txt html/_sources/install/solaris.txt html/_sources/install/ubuntu.txt html/_sources/install/windows.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/install'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/development'
 /usr/bin/install -c -m 644  html/development/travis-ci.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/development'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/suggest'
 /usr/bin/install -c -m 644  html/reference/suggest/completion.html html/reference/suggest/correction.html html/reference/suggest/introduction.html html/reference/suggest/suggestion.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/suggest'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/command'
 /usr/bin/install -c -m 644  html/_sources/reference/command/command_version.txt html/_sources/reference/command/output_format.txt html/_sources/reference/command/pretty_print.txt html/_sources/reference/command/request_id.txt html/_sources/reference/command/request_timeout.txt html/_sources/reference/command/return_code.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/command'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/commands'
 /usr/bin/install -c -m 644  html/reference/commands/range_filter.html html/reference/commands/register.html html/reference/commands/reindex.html html/reference/commands/request_cancel.html html/reference/commands/ruby_eval.html html/reference/commands/ruby_load.html html/reference/commands/schema.html html/reference/commands/select.html html/reference/commands/shutdown.html html/reference/commands/status.html html/reference/commands/suggest.html html/reference/commands/table_copy.html html/reference/commands/table_create.html html/reference/commands/table_list.html html/reference/commands/table_remove.html html/reference/commands/table_rename.html html/reference/commands/table_tokenize.html html/reference/commands/thread_limit.html html/reference/commands/tokenize.html html/reference/commands/tokenizer_list.html html/reference/commands/truncate.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/api'
 /usr/bin/install -c -m 644  html/_sources/reference/api/global_configurations.txt html/_sources/reference/api/grn_cache.txt html/_sources/reference/api/grn_column.txt html/_sources/reference/api/grn_command_version.txt html/_sources/reference/api/grn_content_type.txt html/_sources/reference/api/grn_ctx.txt html/_sources/reference/api/grn_db.txt html/_sources/reference/api/grn_encoding.txt html/_sources/reference/api/grn_expr.txt html/_sources/reference/api/grn_geo.txt html/_sources/reference/api/grn_hook.txt html/_sources/reference/api/grn_ii.txt html/_sources/reference/api/grn_index_cursor.txt html/_sources/reference/api/grn_info.txt html/_sources/reference/api/grn_match_escalation.txt html/_sources/reference/api/grn_obj.txt html/_sources/reference/api/grn_proc.txt html/_sources/reference/api/grn_search.txt html/_sources/reference/api/grn_table.txt html/_sources/reference/api/grn_table_cursor.txt html/_sources/reference/api/grn_thread.txt html/_sources/reference/api/grn_type.txt html/_sources/reference/api/grn_user_data.txt html/_sources/reference/api/overview.txt html/_sources/reference/api/plugin.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/api'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/spec'
 /usr/bin/install -c -m 644  html/spec/gqtp.html html/spec/search.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/spec'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/install'
 /usr/bin/install -c -m 644  html/install/centos.html html/install/debian.html html/install/fedora.html html/install/mac_os_x.html html/install/others.html html/install/solaris.html html/install/ubuntu.html html/install/windows.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/install'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/command'
 /usr/bin/install -c -m 644  html/reference/command/command_version.html html/reference/command/output_format.html html/reference/command/pretty_print.html html/reference/command/request_id.html html/reference/command/request_timeout.html html/reference/command/return_code.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/command'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution/documentation'
 /usr/bin/install -c -m 644  html/_sources/contribution/documentation/c-api.txt html/_sources/contribution/documentation/i18n.txt html/_sources/contribution/documentation/introduction.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution/documentation'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/operations'
 /usr/bin/install -c -m 644  html/_sources/reference/operations/geolocation_search.txt html/_sources/reference/operations/prefix_rk_search.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/operations'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/api'
 /usr/bin/install -c -m 644  html/reference/api/global_configurations.html html/reference/api/grn_cache.html html/reference/api/grn_column.html html/reference/api/grn_command_version.html html/reference/api/grn_content_type.html html/reference/api/grn_ctx.html html/reference/api/grn_db.html html/reference/api/grn_encoding.html html/reference/api/grn_expr.html html/reference/api/grn_geo.html html/reference/api/grn_hook.html html/reference/api/grn_ii.html html/reference/api/grn_index_cursor.html html/reference/api/grn_info.html html/reference/api/grn_match_escalation.html html/reference/api/grn_obj.html html/reference/api/grn_proc.html html/reference/api/grn_search.html html/reference/api/grn_table.html html/reference/api/grn_table_cursor.html html/reference/api/grn_thread.html html/reference/api/grn_type.html html/reference/api/grn_user_data.html html/reference/api/overview.html html/reference/api/plugin.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/api'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/functions'
 /usr/bin/install -c -m 644  html/_sources/reference/functions/between.txt html/_sources/reference/functions/edit_distance.txt html/_sources/reference/functions/fuzzy_search.txt html/_sources/reference/functions/geo_distance.txt html/_sources/reference/functions/geo_in_circle.txt html/_sources/reference/functions/geo_in_rectangle.txt html/_sources/reference/functions/highlight_full.txt html/_sources/reference/functions/highlight_html.txt html/_sources/reference/functions/html_untag.txt html/_sources/reference/functions/in_values.txt html/_sources/reference/functions/now.txt html/_sources/reference/functions/number_classify.txt html/_sources/reference/functions/prefix_rk_search.txt html/_sources/reference/functions/query.txt html/_sources/reference/functions/rand.txt html/_sources/reference/functions/record_number.txt html/_sources/reference/functions/snippet_html.txt html/_sources/reference/functions/string_substring.txt html/_sources/reference/functions/sub_filter.txt html/_sources/reference/functions/time_classify_day.txt html/_sources/reference/functions/time_classify_hour.txt html/_sources/reference/functions/time_classify_minute.txt html/_sources/reference/functions/time_classify_month.txt html/_sources/reference/functions/time_classify_second.txt html/_sources/reference/functions/time_classify_week.txt html/_sources/reference/functions/time_classify_year.txt html/_sources/reference/functions/vector_size.txt html/_sources/reference/functions/vector_slice.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/functions'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/scorers'
 /usr/bin/install -c -m 644  html/_sources/reference/scorers/scorer_tf_at_most.txt html/_sources/reference/scorers/scorer_tf_idf.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/scorers'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution/documentation'
 /usr/bin/install -c -m 644  html/contribution/documentation/c-api.html html/contribution/documentation/i18n.html html/contribution/documentation/introduction.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution/documentation'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/operations'
 /usr/bin/install -c -m 644  html/reference/operations/geolocation_search.html html/reference/operations/prefix_rk_search.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/operations'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/spec'
 /usr/bin/install -c -m 644  html/_sources/spec/gqtp.txt html/_sources/spec/search.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/spec'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/functions'
 /usr/bin/install -c -m 644  html/reference/functions/between.html html/reference/functions/edit_distance.html html/reference/functions/fuzzy_search.html html/reference/functions/geo_distance.html html/reference/functions/geo_in_circle.html html/reference/functions/geo_in_rectangle.html html/reference/functions/highlight_full.html html/reference/functions/highlight_html.html html/reference/functions/html_untag.html html/reference/functions/in_values.html html/reference/functions/now.html html/reference/functions/number_classify.html html/reference/functions/prefix_rk_search.html html/reference/functions/query.html html/reference/functions/rand.html html/reference/functions/record_number.html html/reference/functions/snippet_html.html html/reference/functions/string_substring.html html/reference/functions/sub_filter.html html/reference/functions/time_classify_day.html html/reference/functions/time_classify_hour.html html/reference/functions/time_classify_minute.html html/reference/functions/time_classify_month.html html/reference/functions/time_classify_second.html html/reference/functions/time_classify_week.html html/reference/functions/time_classify_year.html html/reference/functions/vector_size.html html/reference/functions/vector_slice.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/functions'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/scorers'
 /usr/bin/install -c -m 644  html/reference/scorers/scorer_tf_at_most.html html/reference/scorers/scorer_tf_idf.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/scorers'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_static'
 /usr/bin/install -c -m 644  html/_static/ajax-loader.gif html/_static/basic.css html/_static/comment-bright.png html/_static/comment-close.png html/_static/comment.png html/_static/doctools.js html/_static/down-pressed.png html/_static/down.png html/_static/favicon.ico html/_static/file.png html/_static/groonga.css html/_static/header-background.png html/_static/jquery-1.11.1.js html/_static/jquery.js html/_static/logo.png html/_static/minus.png html/_static/navigation-bar.png html/_static/plus.png html/_static/pygments.css html/_static/searchtools.js html/_static/underscore-1.3.1.js html/_static/underscore.js html/_static/up-pressed.png html/_static/up.png html/_static/websupport.js '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_static'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution/development/build'
 /usr/bin/install -c -m 644  html/_sources/contribution/development/build/unix_autotools.txt html/_sources/contribution/development/build/unix_cmake.txt html/_sources/contribution/development/build/windows_cmake.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution/development/build'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/columns'
 /usr/bin/install -c -m 644  html/_sources/reference/columns/index.txt html/_sources/reference/columns/pseudo.txt html/_sources/reference/columns/scalar.txt html/_sources/reference/columns/vector.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/columns'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/server/http'
 /usr/bin/install -c -m 644  html/_sources/server/http/comparison.txt html/_sources/server/http/groonga-httpd.txt html/_sources/server/http/groonga.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/server/http'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution/development/build'
 /usr/bin/install -c -m 644  html/contribution/development/build/unix_autotools.html html/contribution/development/build/unix_cmake.html html/contribution/development/build/windows_cmake.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution/development/build'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/query_expanders'
 /usr/bin/install -c -m 644  html/_sources/reference/query_expanders/tsv.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/query_expanders'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html'
 /usr/bin/install -c -m 644  html/.buildinfo html/characteristic.html html/client.html html/community.html html/contribution.html html/development.html html/genindex.html html/index.html html/install.html html/limitations.html html/news.html html/objects.inv html/reference.html html/search.html html/searchindex.js html/server.html html/spec.html html/troubleshooting.html html/tutorial.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/columns'
 /usr/bin/install -c -m 644  html/reference/columns/index.html html/reference/columns/pseudo.html html/reference/columns/scalar.html html/reference/columns/vector.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/columns'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution/development'
 /usr/bin/install -c -m 644  html/_sources/contribution/development/build.txt html/_sources/contribution/development/com.txt html/_sources/contribution/development/cooperation.txt html/_sources/contribution/development/query.txt html/_sources/contribution/development/release.txt html/_sources/contribution/development/repository.txt html/_sources/contribution/development/test.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution/development'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/server/http'
 /usr/bin/install -c -m 644  html/server/http/comparison.html html/server/http/groonga-httpd.html html/server/http/groonga.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/server/http'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/troubleshooting'
 /usr/bin/install -c -m 644  html/_sources/troubleshooting/different_results_with_the_same_keyword.txt html/_sources/troubleshooting/mmap_cannot_allocate_memory.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/troubleshooting'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/tutorial'
 /usr/bin/install -c -m 644  html/_sources/tutorial/data.txt html/_sources/tutorial/drilldown.txt html/_sources/tutorial/index.txt html/_sources/tutorial/introduction.txt html/_sources/tutorial/lexicon.txt html/_sources/tutorial/match_columns.txt html/_sources/tutorial/micro_blog.txt html/_sources/tutorial/network.txt html/_sources/tutorial/patricia_trie.txt html/_sources/tutorial/query_expansion.txt html/_sources/tutorial/search.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/tutorial'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution'
 /usr/bin/install -c -m 644  html/_sources/contribution/development.txt html/_sources/contribution/documentation.txt html/_sources/contribution/report.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/query_expanders'
 /usr/bin/install -c -m 644  html/reference/query_expanders/tsv.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/query_expanders'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/server'
 /usr/bin/install -c -m 644  html/_sources/server/gqtp.txt html/_sources/server/http.txt html/_sources/server/memcached.txt html/_sources/server/package.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/server'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution/development'
 /usr/bin/install -c -m 644  html/contribution/development/build.html html/contribution/development/com.html html/contribution/development/cooperation.html html/contribution/development/query.html html/contribution/development/release.html html/contribution/development/repository.html html/contribution/development/test.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution/development'
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en'
Making install in ja
make[5]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make  install-recursive
make[6]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja'
Making install in LC_MESSAGES
make[7]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make  install-am
make[8]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[9]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[9]: Nothing to be done for 'install-exec-am'.
make[9]: Nothing to be done for 'install-data-am'.
make[9]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[7]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[8]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[8]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/commands'
 /usr/bin/install -c -m 644  html/_sources/reference/commands/cache_limit.txt html/_sources/reference/commands/check.txt html/_sources/reference/commands/clearlock.txt html/_sources/reference/commands/column_copy.txt html/_sources/reference/commands/column_create.txt html/_sources/reference/commands/column_list.txt html/_sources/reference/commands/column_remove.txt html/_sources/reference/commands/column_rename.txt html/_sources/reference/commands/config_delete.txt html/_sources/reference/commands/config_get.txt html/_sources/reference/commands/config_set.txt html/_sources/reference/commands/database_unmap.txt html/_sources/reference/commands/define_selector.txt html/_sources/reference/commands/defrag.txt html/_sources/reference/commands/delete.txt html/_sources/reference/commands/dump.txt html/_sources/reference/commands/io_flush.txt html/_sources/reference/commands/load.txt html/_sources/reference/commands/lock_acquire.txt html/_sources/reference/commands/lock_clear.txt html/_sources/reference/commands/lock_release.txt html/_sources/reference/commands/log_level.txt html/_sources/reference/commands/log_put.txt html/_sources/reference/commands/log_reopen.txt html/_sources/reference/commands/logical_count.txt html/_sources/reference/commands/logical_parameters.txt html/_sources/reference/commands/logical_range_filter.txt html/_sources/reference/commands/logical_select.txt html/_sources/reference/commands/logical_shard_list.txt html/_sources/reference/commands/logical_table_remove.txt html/_sources/reference/commands/normalize.txt html/_sources/reference/commands/normalizer_list.txt html/_sources/reference/commands/object_exist.txt html/_sources/reference/commands/object_inspect.txt html/_sources/reference/commands/object_list.txt html/_sources/reference/commands/object_remove.txt html/_sources/reference/commands/plugin_register.txt html/_sources/reference/commands/plugin_unregister.txt html/_sources/reference/commands/query_expand.txt html/_sources/reference/commands/quit.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/commands'
 /usr/bin/install -c -m 644  html/reference/commands/cache_limit.html html/reference/commands/check.html html/reference/commands/clearlock.html html/reference/commands/column_copy.html html/reference/commands/column_create.html html/reference/commands/column_list.html html/reference/commands/column_remove.html html/reference/commands/column_rename.html html/reference/commands/config_delete.html html/reference/commands/config_get.html html/reference/commands/config_set.html html/reference/commands/database_unmap.html html/reference/commands/define_selector.html html/reference/commands/defrag.html html/reference/commands/delete.html html/reference/commands/dump.html html/reference/commands/io_flush.html html/reference/commands/load.html html/reference/commands/lock_acquire.html html/reference/commands/lock_clear.html html/reference/commands/lock_release.html html/reference/commands/log_level.html html/reference/commands/log_put.html html/reference/commands/log_reopen.html html/reference/commands/logical_count.html html/reference/commands/logical_parameters.html html/reference/commands/logical_range_filter.html html/reference/commands/logical_select.html html/reference/commands/logical_shard_list.html html/reference/commands/logical_table_remove.html html/reference/commands/normalize.html html/reference/commands/normalizer_list.html html/reference/commands/object_exist.html html/reference/commands/object_inspect.html html/reference/commands/object_list.html html/reference/commands/object_remove.html html/reference/commands/plugin_register.html html/reference/commands/plugin_unregister.html html/reference/commands/query_expand.html html/reference/commands/quit.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/news'
 /usr/bin/install -c -m 644  html/news/0.x.html html/news/1.0.x.html html/news/1.1.x.html html/news/1.2.x.html html/news/1.3.x.html html/news/2.x.html html/news/3.x.html html/news/4.x.html html/news/5.x.html html/news/senna.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/news'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference'
 /usr/bin/install -c -m 644  html/_sources/reference/alias.txt html/_sources/reference/api.txt html/_sources/reference/cast.txt html/_sources/reference/column.txt html/_sources/reference/command.txt html/_sources/reference/configuration.txt html/_sources/reference/executables.txt html/_sources/reference/function.txt html/_sources/reference/grn_expr.txt html/_sources/reference/indexing.txt html/_sources/reference/log.txt html/_sources/reference/normalizers.txt html/_sources/reference/operations.txt html/_sources/reference/output.txt html/_sources/reference/query_expanders.txt html/_sources/reference/regular_expression.txt html/_sources/reference/scorer.txt html/_sources/reference/sharding.txt html/_sources/reference/suggest.txt html/_sources/reference/tables.txt html/_sources/reference/token_filters.txt html/_sources/reference/tokenizers.txt html/_sources/reference/tuning.txt html/_sources/reference/types.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/grn_expr'
 /usr/bin/install -c -m 644  html/_sources/reference/grn_expr/query_syntax.txt html/_sources/reference/grn_expr/script_syntax.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/grn_expr'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/executables'
 /usr/bin/install -c -m 644  html/_sources/reference/executables/grndb.txt html/_sources/reference/executables/grnslap.txt html/_sources/reference/executables/groonga-benchmark.txt html/_sources/reference/executables/groonga-httpd.txt html/_sources/reference/executables/groonga-server-http.txt html/_sources/reference/executables/groonga-suggest-create-dataset.txt html/_sources/reference/executables/groonga-suggest-httpd.txt html/_sources/reference/executables/groonga-suggest-learner.txt html/_sources/reference/executables/groonga.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/executables'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/troubleshooting'
 /usr/bin/install -c -m 644  html/troubleshooting/different_results_with_the_same_keyword.html html/troubleshooting/mmap_cannot_allocate_memory.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/troubleshooting'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_images'
 /usr/bin/install -c -m 644  html/_images/geo-points.png html/_images/used-when-indexing.png html/_images/used-when-searching.png '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_images'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/tutorial'
 /usr/bin/install -c -m 644  html/tutorial/data.html html/tutorial/drilldown.html html/tutorial/index.html html/tutorial/introduction.html html/tutorial/lexicon.html html/tutorial/match_columns.html html/tutorial/micro_blog.html html/tutorial/network.html html/tutorial/patricia_trie.html html/tutorial/query_expansion.html html/tutorial/search.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/tutorial'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution'
 /usr/bin/install -c -m 644  html/contribution/development.html html/contribution/documentation.html html/contribution/report.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/server'
 /usr/bin/install -c -m 644  html/server/gqtp.html html/server/http.html html/server/memcached.html html/server/package.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/server'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources'
 /usr/bin/install -c -m 644  html/_sources/characteristic.txt html/_sources/client.txt html/_sources/community.txt html/_sources/contribution.txt html/_sources/development.txt html/_sources/index.txt html/_sources/install.txt html/_sources/limitations.txt html/_sources/news.txt html/_sources/reference.txt html/_sources/server.txt html/_sources/spec.txt html/_sources/troubleshooting.txt html/_sources/tutorial.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/development'
 /usr/bin/install -c -m 644  html/_sources/development/travis-ci.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/development'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/suggest'
 /usr/bin/install -c -m 644  html/_sources/reference/suggest/completion.txt html/_sources/reference/suggest/correction.txt html/_sources/reference/suggest/introduction.txt html/_sources/reference/suggest/suggestion.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/suggest'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/commands'
 /usr/bin/install -c -m 644  html/_sources/reference/commands/range_filter.txt html/_sources/reference/commands/register.txt html/_sources/reference/commands/reindex.txt html/_sources/reference/commands/request_cancel.txt html/_sources/reference/commands/ruby_eval.txt html/_sources/reference/commands/ruby_load.txt html/_sources/reference/commands/schema.txt html/_sources/reference/commands/select.txt html/_sources/reference/commands/shutdown.txt html/_sources/reference/commands/status.txt html/_sources/reference/commands/suggest.txt html/_sources/reference/commands/table_copy.txt html/_sources/reference/commands/table_create.txt html/_sources/reference/commands/table_list.txt html/_sources/reference/commands/table_remove.txt html/_sources/reference/commands/table_rename.txt html/_sources/reference/commands/table_tokenize.txt html/_sources/reference/commands/thread_limit.txt html/_sources/reference/commands/tokenize.txt html/_sources/reference/commands/tokenizer_list.txt html/_sources/reference/commands/truncate.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/news'
 /usr/bin/install -c -m 644  html/_sources/news/0.x.txt html/_sources/news/1.0.x.txt html/_sources/news/1.1.x.txt html/_sources/news/1.2.x.txt html/_sources/news/1.3.x.txt html/_sources/news/2.x.txt html/_sources/news/3.x.txt html/_sources/news/4.x.txt html/_sources/news/5.x.txt html/_sources/news/senna.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/news'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference'
 /usr/bin/install -c -m 644  html/reference/alias.html html/reference/api.html html/reference/cast.html html/reference/column.html html/reference/command.html html/reference/configuration.html html/reference/executables.html html/reference/function.html html/reference/grn_expr.html html/reference/indexing.html html/reference/log.html html/reference/normalizers.html html/reference/operations.html html/reference/output.html html/reference/query_expanders.html html/reference/regular_expression.html html/reference/scorer.html html/reference/sharding.html html/reference/suggest.html html/reference/tables.html html/reference/token_filters.html html/reference/tokenizers.html html/reference/tuning.html html/reference/types.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/grn_expr'
 /usr/bin/install -c -m 644  html/reference/grn_expr/query_syntax.html html/reference/grn_expr/script_syntax.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/grn_expr'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/executables'
 /usr/bin/install -c -m 644  html/reference/executables/grndb.html html/reference/executables/grnslap.html html/reference/executables/groonga-benchmark.html html/reference/executables/groonga-httpd.html html/reference/executables/groonga-server-http.html html/reference/executables/groonga-suggest-create-dataset.html html/reference/executables/groonga-suggest-httpd.html html/reference/executables/groonga-suggest-learner.html html/reference/executables/groonga.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/executables'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/install'
 /usr/bin/install -c -m 644  html/_sources/install/centos.txt html/_sources/install/debian.txt html/_sources/install/fedora.txt html/_sources/install/mac_os_x.txt html/_sources/install/others.txt html/_sources/install/solaris.txt html/_sources/install/ubuntu.txt html/_sources/install/windows.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/install'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/development'
 /usr/bin/install -c -m 644  html/development/travis-ci.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/development'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/suggest'
 /usr/bin/install -c -m 644  html/reference/suggest/completion.html html/reference/suggest/correction.html html/reference/suggest/introduction.html html/reference/suggest/suggestion.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/suggest'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/command'
 /usr/bin/install -c -m 644  html/_sources/reference/command/command_version.txt html/_sources/reference/command/output_format.txt html/_sources/reference/command/pretty_print.txt html/_sources/reference/command/request_id.txt html/_sources/reference/command/request_timeout.txt html/_sources/reference/command/return_code.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/command'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/commands'
 /usr/bin/install -c -m 644  html/reference/commands/range_filter.html html/reference/commands/register.html html/reference/commands/reindex.html html/reference/commands/request_cancel.html html/reference/commands/ruby_eval.html html/reference/commands/ruby_load.html html/reference/commands/schema.html html/reference/commands/select.html html/reference/commands/shutdown.html html/reference/commands/status.html html/reference/commands/suggest.html html/reference/commands/table_copy.html html/reference/commands/table_create.html html/reference/commands/table_list.html html/reference/commands/table_remove.html html/reference/commands/table_rename.html html/reference/commands/table_tokenize.html html/reference/commands/thread_limit.html html/reference/commands/tokenize.html html/reference/commands/tokenizer_list.html html/reference/commands/truncate.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/api'
 /usr/bin/install -c -m 644  html/_sources/reference/api/global_configurations.txt html/_sources/reference/api/grn_cache.txt html/_sources/reference/api/grn_column.txt html/_sources/reference/api/grn_command_version.txt html/_sources/reference/api/grn_content_type.txt html/_sources/reference/api/grn_ctx.txt html/_sources/reference/api/grn_db.txt html/_sources/reference/api/grn_encoding.txt html/_sources/reference/api/grn_expr.txt html/_sources/reference/api/grn_geo.txt html/_sources/reference/api/grn_hook.txt html/_sources/reference/api/grn_ii.txt html/_sources/reference/api/grn_index_cursor.txt html/_sources/reference/api/grn_info.txt html/_sources/reference/api/grn_match_escalation.txt html/_sources/reference/api/grn_obj.txt html/_sources/reference/api/grn_proc.txt html/_sources/reference/api/grn_search.txt html/_sources/reference/api/grn_table.txt html/_sources/reference/api/grn_table_cursor.txt html/_sources/reference/api/grn_thread.txt html/_sources/reference/api/grn_type.txt html/_sources/reference/api/grn_user_data.txt html/_sources/reference/api/overview.txt html/_sources/reference/api/plugin.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/api'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/spec'
 /usr/bin/install -c -m 644  html/spec/gqtp.html html/spec/search.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/spec'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/install'
 /usr/bin/install -c -m 644  html/install/centos.html html/install/debian.html html/install/fedora.html html/install/mac_os_x.html html/install/others.html html/install/solaris.html html/install/ubuntu.html html/install/windows.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/install'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/command'
 /usr/bin/install -c -m 644  html/reference/command/command_version.html html/reference/command/output_format.html html/reference/command/pretty_print.html html/reference/command/request_id.html html/reference/command/request_timeout.html html/reference/command/return_code.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/command'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution/documentation'
 /usr/bin/install -c -m 644  html/_sources/contribution/documentation/c-api.txt html/_sources/contribution/documentation/i18n.txt html/_sources/contribution/documentation/introduction.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution/documentation'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/operations'
 /usr/bin/install -c -m 644  html/_sources/reference/operations/geolocation_search.txt html/_sources/reference/operations/prefix_rk_search.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/operations'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/api'
 /usr/bin/install -c -m 644  html/reference/api/global_configurations.html html/reference/api/grn_cache.html html/reference/api/grn_column.html html/reference/api/grn_command_version.html html/reference/api/grn_content_type.html html/reference/api/grn_ctx.html html/reference/api/grn_db.html html/reference/api/grn_encoding.html html/reference/api/grn_expr.html html/reference/api/grn_geo.html html/reference/api/grn_hook.html html/reference/api/grn_ii.html html/reference/api/grn_index_cursor.html html/reference/api/grn_info.html html/reference/api/grn_match_escalation.html html/reference/api/grn_obj.html html/reference/api/grn_proc.html html/reference/api/grn_search.html html/reference/api/grn_table.html html/reference/api/grn_table_cursor.html html/reference/api/grn_thread.html html/reference/api/grn_type.html html/reference/api/grn_user_data.html html/reference/api/overview.html html/reference/api/plugin.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/api'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/functions'
 /usr/bin/install -c -m 644  html/_sources/reference/functions/between.txt html/_sources/reference/functions/edit_distance.txt html/_sources/reference/functions/fuzzy_search.txt html/_sources/reference/functions/geo_distance.txt html/_sources/reference/functions/geo_in_circle.txt html/_sources/reference/functions/geo_in_rectangle.txt html/_sources/reference/functions/highlight_full.txt html/_sources/reference/functions/highlight_html.txt html/_sources/reference/functions/html_untag.txt html/_sources/reference/functions/in_values.txt html/_sources/reference/functions/now.txt html/_sources/reference/functions/number_classify.txt html/_sources/reference/functions/prefix_rk_search.txt html/_sources/reference/functions/query.txt html/_sources/reference/functions/rand.txt html/_sources/reference/functions/record_number.txt html/_sources/reference/functions/snippet_html.txt html/_sources/reference/functions/string_substring.txt html/_sources/reference/functions/sub_filter.txt html/_sources/reference/functions/time_classify_day.txt html/_sources/reference/functions/time_classify_hour.txt html/_sources/reference/functions/time_classify_minute.txt html/_sources/reference/functions/time_classify_month.txt html/_sources/reference/functions/time_classify_second.txt html/_sources/reference/functions/time_classify_week.txt html/_sources/reference/functions/time_classify_year.txt html/_sources/reference/functions/vector_size.txt html/_sources/reference/functions/vector_slice.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/functions'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/scorers'
 /usr/bin/install -c -m 644  html/_sources/reference/scorers/scorer_tf_at_most.txt html/_sources/reference/scorers/scorer_tf_idf.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/scorers'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution/documentation'
 /usr/bin/install -c -m 644  html/contribution/documentation/c-api.html html/contribution/documentation/i18n.html html/contribution/documentation/introduction.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution/documentation'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/operations'
 /usr/bin/install -c -m 644  html/reference/operations/geolocation_search.html html/reference/operations/prefix_rk_search.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/operations'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/spec'
 /usr/bin/install -c -m 644  html/_sources/spec/gqtp.txt html/_sources/spec/search.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/spec'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/functions'
 /usr/bin/install -c -m 644  html/reference/functions/between.html html/reference/functions/edit_distance.html html/reference/functions/fuzzy_search.html html/reference/functions/geo_distance.html html/reference/functions/geo_in_circle.html html/reference/functions/geo_in_rectangle.html html/reference/functions/highlight_full.html html/reference/functions/highlight_html.html html/reference/functions/html_untag.html html/reference/functions/in_values.html html/reference/functions/now.html html/reference/functions/number_classify.html html/reference/functions/prefix_rk_search.html html/reference/functions/query.html html/reference/functions/rand.html html/reference/functions/record_number.html html/reference/functions/snippet_html.html html/reference/functions/string_substring.html html/reference/functions/sub_filter.html html/reference/functions/time_classify_day.html html/reference/functions/time_classify_hour.html html/reference/functions/time_classify_minute.html html/reference/functions/time_classify_month.html html/reference/functions/time_classify_second.html html/reference/functions/time_classify_week.html html/reference/functions/time_classify_year.html html/reference/functions/vector_size.html html/reference/functions/vector_slice.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/functions'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/scorers'
 /usr/bin/install -c -m 644  html/reference/scorers/scorer_tf_at_most.html html/reference/scorers/scorer_tf_idf.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/scorers'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_static'
 /usr/bin/install -c -m 644  html/_static/ajax-loader.gif html/_static/basic.css html/_static/comment-bright.png html/_static/comment-close.png html/_static/comment.png html/_static/doctools.js html/_static/down-pressed.png html/_static/down.png html/_static/favicon.ico html/_static/file.png html/_static/groonga.css html/_static/header-background.png html/_static/jquery-1.11.1.js html/_static/jquery.js html/_static/logo.png html/_static/minus.png html/_static/navigation-bar.png html/_static/plus.png html/_static/pygments.css html/_static/searchtools.js html/_static/underscore-1.3.1.js html/_static/underscore.js html/_static/up-pressed.png html/_static/up.png html/_static/websupport.js '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_static'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution/development/build'
 /usr/bin/install -c -m 644  html/_sources/contribution/development/build/unix_autotools.txt html/_sources/contribution/development/build/unix_cmake.txt html/_sources/contribution/development/build/windows_cmake.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution/development/build'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/columns'
 /usr/bin/install -c -m 644  html/_sources/reference/columns/index.txt html/_sources/reference/columns/pseudo.txt html/_sources/reference/columns/scalar.txt html/_sources/reference/columns/vector.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/columns'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/server/http'
 /usr/bin/install -c -m 644  html/_sources/server/http/comparison.txt html/_sources/server/http/groonga-httpd.txt html/_sources/server/http/groonga.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/server/http'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution/development/build'
 /usr/bin/install -c -m 644  html/contribution/development/build/unix_autotools.html html/contribution/development/build/unix_cmake.html html/contribution/development/build/windows_cmake.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution/development/build'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/query_expanders'
 /usr/bin/install -c -m 644  html/_sources/reference/query_expanders/tsv.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/query_expanders'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html'
 /usr/bin/install -c -m 644  html/.buildinfo html/characteristic.html html/client.html html/community.html html/contribution.html html/development.html html/genindex.html html/index.html html/install.html html/limitations.html html/news.html html/objects.inv html/reference.html html/search.html html/searchindex.js html/server.html html/spec.html html/troubleshooting.html html/tutorial.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/columns'
 /usr/bin/install -c -m 644  html/reference/columns/index.html html/reference/columns/pseudo.html html/reference/columns/scalar.html html/reference/columns/vector.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/columns'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution/development'
 /usr/bin/install -c -m 644  html/_sources/contribution/development/build.txt html/_sources/contribution/development/com.txt html/_sources/contribution/development/cooperation.txt html/_sources/contribution/development/query.txt html/_sources/contribution/development/release.txt html/_sources/contribution/development/repository.txt html/_sources/contribution/development/test.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution/development'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/server/http'
 /usr/bin/install -c -m 644  html/server/http/comparison.html html/server/http/groonga-httpd.html html/server/http/groonga.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/server/http'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/troubleshooting'
 /usr/bin/install -c -m 644  html/_sources/troubleshooting/different_results_with_the_same_keyword.txt html/_sources/troubleshooting/mmap_cannot_allocate_memory.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/troubleshooting'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/tutorial'
 /usr/bin/install -c -m 644  html/_sources/tutorial/data.txt html/_sources/tutorial/drilldown.txt html/_sources/tutorial/index.txt html/_sources/tutorial/introduction.txt html/_sources/tutorial/lexicon.txt html/_sources/tutorial/match_columns.txt html/_sources/tutorial/micro_blog.txt html/_sources/tutorial/network.txt html/_sources/tutorial/patricia_trie.txt html/_sources/tutorial/query_expansion.txt html/_sources/tutorial/search.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/tutorial'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution'
 /usr/bin/install -c -m 644  html/_sources/contribution/development.txt html/_sources/contribution/documentation.txt html/_sources/contribution/report.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/query_expanders'
 /usr/bin/install -c -m 644  html/reference/query_expanders/tsv.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/query_expanders'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/server'
 /usr/bin/install -c -m 644  html/_sources/server/gqtp.txt html/_sources/server/http.txt html/_sources/server/memcached.txt html/_sources/server/package.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/server'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution/development'
 /usr/bin/install -c -m 644  html/contribution/development/build.html html/contribution/development/com.html html/contribution/development/cooperation.html html/contribution/development/query.html html/contribution/development/release.html html/contribution/development/repository.html html/contribution/development/test.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution/development'
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[5]: Entering directory '/<<PKGBUILDDIR>>/doc/locale'
make[6]: Entering directory '/<<PKGBUILDDIR>>/doc/locale'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale'
make[4]: Entering directory '/<<PKGBUILDDIR>>/doc'
make[5]: Entering directory '/<<PKGBUILDDIR>>/doc'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/doc'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/doc'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/doc'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/doc'
make[2]: Entering directory '/<<PKGBUILDDIR>>'
make[3]: Entering directory '/<<PKGBUILDDIR>>'
make[3]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/pkgconfig'
 /usr/bin/install -c -m 644 groonga.pc '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/pkgconfig'
make[3]: Leaving directory '/<<PKGBUILDDIR>>'
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   debian/rules override_dh_install
make[1]: Entering directory '/<<PKGBUILDDIR>>'
find /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/ -name *.la -delete
find /<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/ -name 'underscore*.js' -delete
find /<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/ -name 'jquery*.js' -delete
install -d debian/tmp/etc/munin/plugin-conf.d/
install -m 0644 debian/groonga-munin-plugins.conf \
  debian/tmp/etc/munin/plugin-conf.d/groonga
mv debian/tmp/usr/share/doc/groonga/ \
  debian/tmp/usr/share/doc/groonga-doc/
dh_install
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   dh_installdocs -a
   dh_installchangelogs -a
   dh_systemd_enable -a
   dh_installinit -a
   dh_systemd_start -a
   dh_installlogrotate -a
   dh_lintian -a
   dh_perl -a
   dh_link -a
   dh_strip_nondeterminism -a
   dh_compress -a
   dh_fixperms -a
   dh_strip -a
   dh_makeshlibs -a
   dh_shlibdeps -a
dpkg-shlibdeps: warning: symbol __aeabi_atexit@CXXABI_ARM_1.3.3 used by debian/libgroonga0/usr/lib/arm-linux-gnueabihf/libgroonga.so.0.0.0 found in none of the libraries
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libgroonga0/usr/lib/arm-linux-gnueabihf/libgroonga.so.0.0.0 was not linked against libmsgpackc.so.2 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libgroonga0/usr/lib/arm-linux-gnueabihf/libgroonga.so.0.0.0 was not linked against libatomic.so.1 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-plugin-suggest/usr/bin/groonga-suggest-httpd debian/groonga-plugin-suggest/usr/bin/groonga-suggest-create-dataset debian/groonga-plugin-suggest/usr/bin/groonga-suggest-learner were not linked against libstdc++.so.6 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-plugin-suggest/usr/bin/groonga-suggest-httpd debian/groonga-plugin-suggest/usr/bin/groonga-suggest-create-dataset debian/groonga-plugin-suggest/usr/bin/groonga-suggest-learner were not linked against libdl.so.2 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-plugin-suggest/usr/bin/groonga-suggest-httpd debian/groonga-plugin-suggest/usr/bin/groonga-suggest-create-dataset debian/groonga-plugin-suggest/usr/bin/groonga-suggest-learner were not linked against libz.so.1 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/grndb debian/groonga-bin/usr/bin/groonga were not linked against libstdc++.so.6 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/grndb debian/groonga-bin/usr/bin/groonga were not linked against ld-linux-armhf.so.3 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/grndb debian/groonga-bin/usr/bin/groonga were not linked against libz.so.1 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/grndb debian/groonga-bin/usr/bin/groonga were not linked against libdl.so.2 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/grndb debian/groonga-bin/usr/bin/groonga were not linked against libmsgpackc.so.2 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-httpd/usr/sbin/groonga-httpd was not linked against ld-linux-armhf.so.3 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-httpd/usr/sbin/groonga-httpd was not linked against libm.so.6 (it uses none of the library's symbols)
   dh_installdeb -a
   dh_gencontrol -a
dpkg-gencontrol: warning: Depends field of package groonga: unknown substitution variable ${shlibs:Depends}
dpkg-gencontrol: warning: Depends field of package libgroonga-dev: unknown substitution variable ${shlibs:Depends}
   dh_md5sums -a
   dh_builddeb -a
dpkg-deb: building package 'libgroonga0-dbgsym' in '../libgroonga0-dbgsym_6.1.5-1+deb9u1_armhf.deb'.
dpkg-deb: building package 'groonga' in '../groonga_6.1.5-1+deb9u1_armhf.deb'.
dpkg-deb: building package 'groonga-tokenizer-mecab-dbgsym' in '../groonga-tokenizer-mecab-dbgsym_6.1.5-1+deb9u1_armhf.deb'.
dpkg-deb: building package 'libgroonga-dev' in '../libgroonga-dev_6.1.5-1+deb9u1_armhf.deb'.
dpkg-deb: building package 'groonga-tokenizer-mecab' in '../groonga-tokenizer-mecab_6.1.5-1+deb9u1_armhf.deb'.
dpkg-deb: building package 'groonga-token-filter-stem-dbgsym' in '../groonga-token-filter-stem-dbgsym_6.1.5-1+deb9u1_armhf.deb'.
dpkg-deb: building package 'groonga-plugin-suggest-dbgsym' in '../groonga-plugin-suggest-dbgsym_6.1.5-1+deb9u1_armhf.deb'.
dpkg-deb: building package 'groonga-token-filter-stem' in '../groonga-token-filter-stem_6.1.5-1+deb9u1_armhf.deb'.
dpkg-deb: building package 'groonga-bin-dbgsym' in '../groonga-bin-dbgsym_6.1.5-1+deb9u1_armhf.deb'.
dpkg-deb: building package 'groonga-httpd-dbgsym' in '../groonga-httpd-dbgsym_6.1.5-1+deb9u1_armhf.deb'.
dpkg-deb: building package 'groonga-plugin-suggest' in '../groonga-plugin-suggest_6.1.5-1+deb9u1_armhf.deb'.
dpkg-deb: building package 'groonga-bin' in '../groonga-bin_6.1.5-1+deb9u1_armhf.deb'.
dpkg-deb: building package 'groonga-httpd' in '../groonga-httpd_6.1.5-1+deb9u1_armhf.deb'.
dpkg-deb: building package 'libgroonga0' in '../libgroonga0_6.1.5-1+deb9u1_armhf.deb'.
 dpkg-genbuildinfo --build=any
 dpkg-genchanges --build=any -mRaspbian wandboard test autobuilder <root@raspbian.org> >../groonga_6.1.5-1+deb9u1_armhf.changes
dpkg-genchanges: info: binary-only arch-specific upload (source code and arch-indep packages not included)
 dpkg-source --after-build groonga-6.1.5
dpkg-buildpackage: info: binary-only upload (no source included)
--------------------------------------------------------------------------------
Build finished at 2019-09-07T18:52:32Z

Finished
--------

I: Built successfully

+------------------------------------------------------------------------------+
| Post Build Chroot                                                            |
+------------------------------------------------------------------------------+


+------------------------------------------------------------------------------+
| Changes                                                                      |
+------------------------------------------------------------------------------+


groonga_6.1.5-1+deb9u1_armhf.changes:
-------------------------------------

Format: 1.8
Date: Tue, 07 May 2019 22:33:11 +0900
Source: groonga
Binary: groonga groonga-server-common groonga-server-gqtp libgroonga-dev libgroonga0 groonga-tokenizer-mecab groonga-token-filter-stem groonga-plugin-suggest groonga-bin groonga-httpd groonga-doc groonga-examples groonga-munin-plugins
Architecture: armhf
Version: 6.1.5-1+deb9u1
Distribution: stretch-staging
Urgency: medium
Maintainer: Raspbian wandboard test autobuilder <root@raspbian.org>
Changed-By: Kentaro Hayashi <hayashi@clear-code.com>
Description:
 groonga    - Fulltext search engine (metapackage for library use)
 groonga-bin - Commands for Groonga
 groonga-doc - Documentation of Groonga
 groonga-examples - Examples of Groonga
 groonga-httpd - Groonga HTTP server
 groonga-munin-plugins - munin-node plugins for Groonga
 groonga-plugin-suggest - Suggest plugin for Groonga
 groonga-server-common - Fulltext search engine (metapackage for server use)
 groonga-server-gqtp - Fulltext search engine (metapackage for GQTP server use)
 groonga-token-filter-stem - Stemming token filter for Groonga
 groonga-tokenizer-mecab - MeCab tokenizer for Groonga
 libgroonga-dev - Development files to use Groonga as a library
 libgroonga0 - Library files for Groonga
Closes: 928304
Changes:
 groonga (6.1.5-1+deb9u1) stretch; urgency=medium
 .
   * debian/groonga-httpd.logrotate
     debian/groonga-server-gqtp.logrotate
     - Mitigate privilege escalation by changing the owner and group of logs
       with "su" option. Reported by Wolfgang Hotwagner.
       (Closes: #928304) (CVE-2019-11675)
Checksums-Sha1:
 8fb4e777fb8171e71c4e73ab6974f1ce072a9d18 141486 groonga-bin-dbgsym_6.1.5-1+deb9u1_armhf.deb
 7a0380f2266482471184b5d56452d570a8b349f6 253398 groonga-bin_6.1.5-1+deb9u1_armhf.deb
 9012aaa2c2593133abf790c22df495d806553b99 2057876 groonga-httpd-dbgsym_6.1.5-1+deb9u1_armhf.deb
 82d579c099bd6f2ab3c62745a19c44011a96b3be 315260 groonga-httpd_6.1.5-1+deb9u1_armhf.deb
 2792d4eb8216471aef7659cfe35c6525bbde0864 123196 groonga-plugin-suggest-dbgsym_6.1.5-1+deb9u1_armhf.deb
 f02e3c81c6650726b98f224f1e19151f121b799b 37298 groonga-plugin-suggest_6.1.5-1+deb9u1_armhf.deb
 9d6b98ec9722143b6d68453516cd953ef8fa5a17 9908 groonga-token-filter-stem-dbgsym_6.1.5-1+deb9u1_armhf.deb
 e0f32dad1cfbdceb8ae1d98344ad8942cc24c7e4 11874 groonga-token-filter-stem_6.1.5-1+deb9u1_armhf.deb
 1a4d8e889e4cc9f75e4449b4ed104e01f289b019 13832 groonga-tokenizer-mecab-dbgsym_6.1.5-1+deb9u1_armhf.deb
 bd6b97d9a6f82550a85a164f561e6ad953f02aa7 13438 groonga-tokenizer-mecab_6.1.5-1+deb9u1_armhf.deb
 49e1a3370baa85e372cf005703c70051e605fa09 9260 groonga_6.1.5-1+deb9u1_armhf.buildinfo
 67f0f1a6280eb77813e25e6c4dc013aa1c36ea3b 8682 groonga_6.1.5-1+deb9u1_armhf.deb
 16c99786eaf3cdc5e872df0dea62edd50fd53e71 32548 libgroonga-dev_6.1.5-1+deb9u1_armhf.deb
 c85a141b8437e3effa80ee2f3f5cbd309252fe41 3773558 libgroonga0-dbgsym_6.1.5-1+deb9u1_armhf.deb
 b4786bc7df73f8bef605272a2741548641313ac1 1274292 libgroonga0_6.1.5-1+deb9u1_armhf.deb
Checksums-Sha256:
 c69e83797febb5bad8b61ced0b765029548ad8066eeaa2511526b90dd43e0e90 141486 groonga-bin-dbgsym_6.1.5-1+deb9u1_armhf.deb
 2554e22bfd822d26a412aea806fa4cd278b748c5b5bb3ae2f90e2294f2fd741a 253398 groonga-bin_6.1.5-1+deb9u1_armhf.deb
 1e9da55f34f2a2afea44367783a76bdf720fb1970124a25248257b7a29517f7d 2057876 groonga-httpd-dbgsym_6.1.5-1+deb9u1_armhf.deb
 a783ec3c65d9e689bef0920b7e334eaa609f48e58c352b29d3619975e0d61c87 315260 groonga-httpd_6.1.5-1+deb9u1_armhf.deb
 ba300b9bc1c2f3cb6d0bf521a078a24cb84df3cd4b93e5ee0948a42b01c7a772 123196 groonga-plugin-suggest-dbgsym_6.1.5-1+deb9u1_armhf.deb
 824b0dae97caee2615551359a6f69d191c4147bec3ba6fdd1bd8757bf4051d75 37298 groonga-plugin-suggest_6.1.5-1+deb9u1_armhf.deb
 84d8e3c35446162f25e081e25f35ebb08cab8b6ab1b5ed32c5b889cb35641ace 9908 groonga-token-filter-stem-dbgsym_6.1.5-1+deb9u1_armhf.deb
 235fcd5f52fc93e22ca7fe9313ee0f56ebb7ddc72800412f1dbec831710b4734 11874 groonga-token-filter-stem_6.1.5-1+deb9u1_armhf.deb
 e7534464ebab1bef92033ecd078c1888f4c325f8597d862b8f4c7a1512ad4c7f 13832 groonga-tokenizer-mecab-dbgsym_6.1.5-1+deb9u1_armhf.deb
 11998639f799c1c4f01ad56388f6270f7853e01399340fc4e0149da990f2642a 13438 groonga-tokenizer-mecab_6.1.5-1+deb9u1_armhf.deb
 ca12909c8612410fd012a8b3d217c3409f0d45fc4b446e65f6a774b71bfeb10c 9260 groonga_6.1.5-1+deb9u1_armhf.buildinfo
 3aa28674e12ab7fec17d4a7c59626748deb9aee0646e8dd6962f294baefb1b6d 8682 groonga_6.1.5-1+deb9u1_armhf.deb
 5aef62ee8035f9a25e6300c2f6f0a75fa17ecaf933cd2e1729595b1fcd684ddd 32548 libgroonga-dev_6.1.5-1+deb9u1_armhf.deb
 1bb95cc9b2f5d50817f3d130fa1d0f2ecc023a9659ede7946317161c38bfed3c 3773558 libgroonga0-dbgsym_6.1.5-1+deb9u1_armhf.deb
 e437f3f6c9642f2277bd04f4d5147193ed1defdd60b486f1dd6e071dce0acc84 1274292 libgroonga0_6.1.5-1+deb9u1_armhf.deb
Files:
 c8b29ee7c035a2cc4ea7796e213164d2 141486 debug extra groonga-bin-dbgsym_6.1.5-1+deb9u1_armhf.deb
 85c285e951a396ad96d045fce2d32be6 253398 database optional groonga-bin_6.1.5-1+deb9u1_armhf.deb
 58885faf0bf95ec06b58f59f41cf9517 2057876 debug extra groonga-httpd-dbgsym_6.1.5-1+deb9u1_armhf.deb
 8b6d92ef678847c770bcdacdf59e2c5a 315260 database optional groonga-httpd_6.1.5-1+deb9u1_armhf.deb
 4de15379f204921bb44d00ab581d901f 123196 debug extra groonga-plugin-suggest-dbgsym_6.1.5-1+deb9u1_armhf.deb
 d25663d709a94b7acc5999daeecac4e4 37298 libs optional groonga-plugin-suggest_6.1.5-1+deb9u1_armhf.deb
 2fb601ac9bc704e26e449ea28bb1aebb 9908 debug extra groonga-token-filter-stem-dbgsym_6.1.5-1+deb9u1_armhf.deb
 52b9984af58b29de739f31e144bd1f4d 11874 libs optional groonga-token-filter-stem_6.1.5-1+deb9u1_armhf.deb
 4079f472766b9cf84aafac734c32936f 13832 debug extra groonga-tokenizer-mecab-dbgsym_6.1.5-1+deb9u1_armhf.deb
 0b68eeaad228b78ab1e0781d5d4a3de6 13438 libs optional groonga-tokenizer-mecab_6.1.5-1+deb9u1_armhf.deb
 d3be31e0f47911857410c51ba792b2ce 9260 database optional groonga_6.1.5-1+deb9u1_armhf.buildinfo
 98c90e1999b1fb9dbede0be230a4ce5c 8682 database optional groonga_6.1.5-1+deb9u1_armhf.deb
 c44e2f11bde88914053a769cd346735d 32548 libdevel optional libgroonga-dev_6.1.5-1+deb9u1_armhf.deb
 8bf8fc02147e7e22deb055e9ee2fd1e1 3773558 debug extra libgroonga0-dbgsym_6.1.5-1+deb9u1_armhf.deb
 581af3810118205beae680857fbd8f7c 1274292 libs optional libgroonga0_6.1.5-1+deb9u1_armhf.deb

+------------------------------------------------------------------------------+
| Package contents                                                             |
+------------------------------------------------------------------------------+


groonga-bin-dbgsym_6.1.5-1+deb9u1_armhf.deb
-------------------------------------------

 new debian package, version 2.0.
 size 141486 bytes: control archive=574 bytes.
     471 bytes,    13 lines      control              
     318 bytes,     3 lines      md5sums              
 Package: groonga-bin-dbgsym
 Source: groonga
 Version: 6.1.5-1+deb9u1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 176
 Depends: groonga-bin (= 6.1.5-1+deb9u1)
 Section: debug
 Priority: extra
 Homepage: http://groonga.org/
 Description: Debug symbols for groonga-bin
 Build-Ids: 12f8bef419652b4ff303865ebbbccee8a2744335 c93e94a537522550c88ded7fff6f0560d2f7cdd0 f1bba285ca1889a4df9ff16b7776a63d0c6a724b

drwxr-xr-x root/root         0 2019-05-07 13:33 ./
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/12/
-rw-r--r-- root/root     19580 2019-05-07 13:33 ./usr/lib/debug/.build-id/12/f8bef419652b4ff303865ebbbccee8a2744335.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/c9/
-rw-r--r-- root/root     87784 2019-05-07 13:33 ./usr/lib/debug/.build-id/c9/3e94a537522550c88ded7fff6f0560d2f7cdd0.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/f1/
-rw-r--r-- root/root     59376 2019-05-07 13:33 ./usr/lib/debug/.build-id/f1/bba285ca1889a4df9ff16b7776a63d0c6a724b.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/
lrwxrwxrwx root/root         0 2019-05-07 13:33 ./usr/share/doc/groonga-bin-dbgsym -> groonga-bin


groonga-bin_6.1.5-1+deb9u1_armhf.deb
------------------------------------

 new debian package, version 2.0.
 size 253398 bytes: control archive=1794 bytes.
      26 bytes,     1 lines      conffiles            
     653 bytes,    17 lines      control              
    3413 bytes,    37 lines      md5sums              
 Package: groonga-bin
 Source: groonga
 Version: 6.1.5-1+deb9u1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 1125
 Depends: libc6 (>= 2.15), libgcc1 (>= 1:3.5), libgroonga0 (= 6.1.5-1+deb9u1), libmsgpackc2 (>= 0.5.1), libstdc++6 (>= 4.1.1), zlib1g (>= 1:1.1.4)
 Breaks: groonga (<< 1.2.0-1)
 Replaces: groonga (<< 1.2.0-1)
 Section: database
 Priority: optional
 Homepage: http://groonga.org/
 Description: Commands for Groonga
  Groonga is an open-source fulltext search engine and column store.
  It lets you write high-performance applications that requires fulltext search.
  .
  This package provides 'groonga' command.

drwxr-xr-x root/root         0 2019-05-07 13:33 ./
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/groonga/
-rw-r--r-- root/root       303 2019-05-07 13:33 ./etc/groonga/groonga.conf
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/bin/
-rwxr-xr-x root/root      9728 2019-05-07 13:33 ./usr/bin/grndb
-rwxr-xr-x root/root     71840 2019-05-07 13:33 ./usr/bin/groonga
-rwxr-xr-x root/root     42804 2019-05-07 13:33 ./usr/bin/groonga-benchmark
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/groonga-bin/
-rw-r--r-- root/root      3633 2019-05-07 13:33 ./usr/share/doc/groonga-bin/changelog.Debian.gz
-rw-r--r-- root/root     14825 2019-05-07 13:33 ./usr/share/doc/groonga-bin/copyright
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/groonga/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/groonga/html/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/groonga/html/admin/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/
-rw-r--r-- root/root      1523 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/groonga-admin.css
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/
-rw-r--r-- root/root       180 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png
-rw-r--r-- root/root       182 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_flat_55_fbec88_40x100.png
-rw-r--r-- root/root       124 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png
-rw-r--r-- root/root       123 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_glass_85_dfeffc_1x400.png
-rw-r--r-- root/root       119 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_glass_95_fef1ec_1x400.png
-rw-r--r-- root/root      4033 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png
-rw-r--r-- root/root       104 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png
-rw-r--r-- root/root        88 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png
-rw-r--r-- root/root      4369 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_217bc0_256x240.png
-rw-r--r-- root/root      4369 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_2e83ff_256x240.png
-rw-r--r-- root/root      4369 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_469bdd_256x240.png
-rw-r--r-- root/root      5355 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_6da8d5_256x240.png
-rw-r--r-- root/root      4369 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_cd0a0a_256x240.png
-rw-r--r-- root/root      4369 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_d8e7f3_256x240.png
-rw-r--r-- root/root      5355 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_f9bd01_256x240.png
-rw-r--r-- root/root     33359 2019-05-07 13:33 ./usr/share/groonga/html/admin/css/redmond/jquery-ui-1.8.18.custom.css
-rw-r--r-- root/root      1406 2019-05-07 13:33 ./usr/share/groonga/html/admin/favicon.ico
-rw-r--r-- root/root       682 2019-05-07 13:33 ./usr/share/groonga/html/admin/favicon.png
-rw-r--r-- root/root      4273 2019-05-07 13:33 ./usr/share/groonga/html/admin/favicon.svg
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/groonga/html/admin/images/
-rw-r--r-- root/root      6064 2019-05-07 13:33 ./usr/share/groonga/html/admin/images/groonga.png
-rw-r--r-- root/root      9996 2019-05-07 13:33 ./usr/share/groonga/html/admin/images/groonga.svg
-rw-r--r-- root/root       673 2019-05-07 13:33 ./usr/share/groonga/html/admin/images/loading.gif
-rw-r--r-- root/root     13032 2019-05-07 13:33 ./usr/share/groonga/html/admin/index.html
-rw-r--r-- root/root     13432 2019-05-07 13:33 ./usr/share/groonga/html/admin/index.ja.html
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/groonga/html/admin/js/
-rw-r--r-- root/root     43103 2019-05-07 13:33 ./usr/share/groonga/html/admin/js/groonga-admin.ja.js
-rw-r--r-- root/root     42828 2019-05-07 13:33 ./usr/share/groonga/html/admin/js/groonga-admin.js
-rw-r--r-- root/root    252881 2019-05-07 13:33 ./usr/share/groonga/html/admin/js/jquery-1.7.2.js
-rw-r--r-- root/root    377848 2019-05-07 13:33 ./usr/share/groonga/html/admin/js/jquery-ui-1.8.18.custom.js
-rw-r--r-- root/root    125201 2019-05-07 13:33 ./usr/share/groonga/html/admin/js/jquery.flot-0.8.3.js
-rw-r--r-- root/root      1069 2019-05-07 13:33 ./usr/share/groonga/html/admin/js/jquery.flot.license.txt
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/lintian/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       164 2019-03-29 14:10 ./usr/share/lintian/overrides/groonga-bin


groonga-httpd-dbgsym_6.1.5-1+deb9u1_armhf.deb
---------------------------------------------

 new debian package, version 2.0.
 size 2057876 bytes: control archive=460 bytes.
     396 bytes,    13 lines      control              
     106 bytes,     1 lines      md5sums              
 Package: groonga-httpd-dbgsym
 Source: groonga
 Version: 6.1.5-1+deb9u1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 2229
 Depends: groonga-httpd (= 6.1.5-1+deb9u1)
 Section: debug
 Priority: extra
 Homepage: http://groonga.org/
 Description: Debug symbols for groonga-httpd
 Build-Ids: 2a081bd76df3868c510ad0e4c3c1f8078c8072f8

drwxr-xr-x root/root         0 2019-05-07 13:33 ./
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/2a/
-rw-r--r-- root/root   2271480 2019-05-07 13:33 ./usr/lib/debug/.build-id/2a/081bd76df3868c510ad0e4c3c1f8078c8072f8.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/
lrwxrwxrwx root/root         0 2019-05-07 13:33 ./usr/share/doc/groonga-httpd-dbgsym -> groonga-httpd


groonga-httpd_6.1.5-1+deb9u1_armhf.deb
--------------------------------------

 new debian package, version 2.0.
 size 315260 bytes: control archive=1948 bytes.
     667 bytes,    20 lines      conffiles            
     792 bytes,    18 lines      control              
     427 bytes,     6 lines      md5sums              
    1767 bytes,    54 lines   *  postinst             #!/bin/sh
    1224 bytes,    40 lines   *  postrm               #!/bin/sh
     202 bytes,     7 lines   *  prerm                #!/bin/sh
 Package: groonga-httpd
 Source: groonga
 Version: 6.1.5-1+deb9u1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 886
 Depends: init-system-helpers (>= 1.18~), libc6 (>= 2.10), libgroonga0, libpcre3, libssl1.1 (>= 1.1.0), zlib1g (>= 1:1.1.4), curl, groonga-server-common (= 6.1.5-1+deb9u1), lsb-base
 Breaks: groonga (<< 1.2.0-1), groonga-server-http (<< 4.0.8-1)
 Replaces: groonga (<< 1.2.0-1), groonga-server-http (<< 4.0.8-1)
 Provides: groonga-server-http
 Section: database
 Priority: optional
 Homepage: http://groonga.org/
 Description: Groonga HTTP server
  Groonga is an open-source fulltext search engine and column store.
  It lets you write high-performance applications that requires fulltext search.
  .
  This package provides 'groonga-httpd' command.

drwxr-xr-x root/root         0 2019-05-07 13:33 ./
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/default/
-rw-r--r-- root/root       738 2019-03-29 14:10 ./etc/default/groonga-httpd
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/groonga/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/groonga/httpd/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/groonga/httpd/client_body_temp/
-rw-r--r-- root/root      1077 2019-05-07 13:33 ./etc/groonga/httpd/fastcgi.conf
-rw-r--r-- root/root      1077 2019-05-07 13:33 ./etc/groonga/httpd/fastcgi.conf.default
-rw-r--r-- root/root      1007 2019-05-07 13:33 ./etc/groonga/httpd/fastcgi_params
-rw-r--r-- root/root      1007 2019-05-07 13:33 ./etc/groonga/httpd/fastcgi_params.default
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/groonga/httpd/fastcgi_temp/
-rw-r--r-- root/root      1864 2019-05-07 13:33 ./etc/groonga/httpd/groonga-httpd.conf
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/groonga/httpd/html/
-rw-r--r-- root/root       537 2019-05-07 13:33 ./etc/groonga/httpd/html/50x.html
-rw-r--r-- root/root       612 2019-05-07 13:33 ./etc/groonga/httpd/html/index.html
-rw-r--r-- root/root      2837 2019-05-07 13:33 ./etc/groonga/httpd/koi-utf
-rw-r--r-- root/root      2223 2019-05-07 13:33 ./etc/groonga/httpd/koi-win
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/groonga/httpd/logs/
-rw-r--r-- root/root      3957 2019-05-07 13:33 ./etc/groonga/httpd/mime.types
-rw-r--r-- root/root      3957 2019-05-07 13:33 ./etc/groonga/httpd/mime.types.default
-rw-r--r-- root/root      2656 2019-05-07 13:33 ./etc/groonga/httpd/nginx.conf.default
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/groonga/httpd/proxy_temp/
-rw-r--r-- root/root       636 2019-05-07 13:33 ./etc/groonga/httpd/scgi_params
-rw-r--r-- root/root       636 2019-05-07 13:33 ./etc/groonga/httpd/scgi_params.default
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/groonga/httpd/scgi_temp/
-rw-r--r-- root/root       664 2019-05-07 13:33 ./etc/groonga/httpd/uwsgi_params
-rw-r--r-- root/root       664 2019-05-07 13:33 ./etc/groonga/httpd/uwsgi_params.default
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/groonga/httpd/uwsgi_temp/
-rw-r--r-- root/root      3610 2019-05-07 13:33 ./etc/groonga/httpd/win-utf
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/init.d/
-rwxr-xr-x root/root      4526 2019-03-29 14:10 ./etc/init.d/groonga-httpd
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/logrotate.d/
-rw-r--r-- root/root       386 2019-05-07 13:33 ./etc/logrotate.d/groonga-httpd
drwxr-xr-x root/root         0 2019-05-07 13:33 ./lib/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./lib/systemd/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./lib/systemd/system/
-rw-r--r-- root/root       437 2019-05-07 13:33 ./lib/systemd/system/groonga-httpd.service
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/sbin/
-rwxr-xr-x root/root    803212 2019-05-07 13:33 ./usr/sbin/groonga-httpd
-rwxr-xr-x root/root      2555 2019-05-07 13:33 ./usr/sbin/groonga-httpd-restart
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/groonga-httpd/
-rw-r--r-- root/root      3633 2019-05-07 13:33 ./usr/share/doc/groonga-httpd/changelog.Debian.gz
-rw-r--r-- root/root     14825 2019-05-07 13:33 ./usr/share/doc/groonga-httpd/copyright
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/lintian/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       130 2019-03-29 14:10 ./usr/share/lintian/overrides/groonga-httpd
drwxr-xr-x root/root         0 2019-05-07 13:33 ./var/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./var/log/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./var/log/groonga/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./var/log/groonga/httpd/


groonga-plugin-suggest-dbgsym_6.1.5-1+deb9u1_armhf.deb
------------------------------------------------------

 new debian package, version 2.0.
 size 123196 bytes: control archive=644 bytes.
     545 bytes,    13 lines      control              
     424 bytes,     4 lines      md5sums              
 Package: groonga-plugin-suggest-dbgsym
 Source: groonga
 Version: 6.1.5-1+deb9u1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 161
 Depends: groonga-plugin-suggest (= 6.1.5-1+deb9u1)
 Section: debug
 Priority: extra
 Homepage: http://groonga.org/
 Description: Debug symbols for groonga-plugin-suggest
 Build-Ids: 810a9a06f244280023a82ebf430a6d11863e04d8 cf5369d9320eb7a4bef41f04a3b63e28bda187d7 d923b81314e10b68382c47e485f613411e2e487c fa99fe26e7c250354cba147b9d739e975a74bc2a

drwxr-xr-x root/root         0 2019-05-07 13:33 ./
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/81/
-rw-r--r-- root/root     16240 2019-05-07 13:33 ./usr/lib/debug/.build-id/81/0a9a06f244280023a82ebf430a6d11863e04d8.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/cf/
-rw-r--r-- root/root     54316 2019-05-07 13:33 ./usr/lib/debug/.build-id/cf/5369d9320eb7a4bef41f04a3b63e28bda187d7.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/d9/
-rw-r--r-- root/root     34856 2019-05-07 13:33 ./usr/lib/debug/.build-id/d9/23b81314e10b68382c47e485f613411e2e487c.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/fa/
-rw-r--r-- root/root     43864 2019-05-07 13:33 ./usr/lib/debug/.build-id/fa/99fe26e7c250354cba147b9d739e975a74bc2a.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/
lrwxrwxrwx root/root         0 2019-05-07 13:33 ./usr/share/doc/groonga-plugin-suggest-dbgsym -> groonga-plugin-suggest


groonga-plugin-suggest_6.1.5-1+deb9u1_armhf.deb
-----------------------------------------------

 new debian package, version 2.0.
 size 37298 bytes: control archive=866 bytes.
     757 bytes,    17 lines      control              
     557 bytes,     7 lines      md5sums              
 Package: groonga-plugin-suggest
 Source: groonga
 Version: 6.1.5-1+deb9u1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 138
 Depends: libc6 (>= 2.4), libevent-2.0-5 (>= 2.0.10-stable), libgcc1 (>= 1:3.5), libgroonga0 (= 6.1.5-1+deb9u1), libmsgpackc2 (>= 1.0.0), libstdc++6 (>= 4.1.1), libzmq5 (>= 3.2.3+dfsg), zlib1g (>= 1:1.1.4)
 Breaks: libgroonga-plugin-suggest (<< 1.2.0-1)
 Replaces: libgroonga-plugin-suggest (<< 1.2.0-1)
 Section: libs
 Priority: optional
 Homepage: http://groonga.org/
 Description: Suggest plugin for Groonga
  Groonga is an open-source fulltext search engine and column store.
  It lets you write high-performance applications that requires fulltext search.
  .
  This package provides suggest plugin.

drwxr-xr-x root/root         0 2019-05-07 13:33 ./
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/bin/
-rwxr-xr-x root/root     13864 2019-05-07 13:33 ./usr/bin/groonga-suggest-create-dataset
-rwxr-xr-x root/root     22268 2019-05-07 13:33 ./usr/bin/groonga-suggest-httpd
-rwxr-xr-x root/root     38564 2019-05-07 13:33 ./usr/bin/groonga-suggest-learner
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest/
-rw-r--r-- root/root     30048 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest/suggest.so
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/groonga-plugin-suggest/
-rw-r--r-- root/root      3633 2019-05-07 13:33 ./usr/share/doc/groonga-plugin-suggest/changelog.Debian.gz
-rw-r--r-- root/root     14825 2019-05-07 13:33 ./usr/share/doc/groonga-plugin-suggest/copyright
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/lintian/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       242 2019-03-29 14:10 ./usr/share/lintian/overrides/groonga-plugin-suggest


groonga-token-filter-stem-dbgsym_6.1.5-1+deb9u1_armhf.deb
---------------------------------------------------------

 new debian package, version 2.0.
 size 9908 bytes: control archive=471 bytes.
     430 bytes,    13 lines      control              
     106 bytes,     1 lines      md5sums              
 Package: groonga-token-filter-stem-dbgsym
 Source: groonga
 Version: 6.1.5-1+deb9u1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 23
 Depends: groonga-token-filter-stem (= 6.1.5-1+deb9u1)
 Section: debug
 Priority: extra
 Homepage: http://groonga.org/
 Description: Debug symbols for groonga-token-filter-stem
 Build-Ids: 817e943c788db5c59af3556a514fae9c8aa3fcf7

drwxr-xr-x root/root         0 2019-05-07 13:33 ./
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/81/
-rw-r--r-- root/root     12600 2019-05-07 13:33 ./usr/lib/debug/.build-id/81/7e943c788db5c59af3556a514fae9c8aa3fcf7.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/
lrwxrwxrwx root/root         0 2019-05-07 13:33 ./usr/share/doc/groonga-token-filter-stem-dbgsym -> groonga-token-filter-stem


groonga-token-filter-stem_6.1.5-1+deb9u1_armhf.deb
--------------------------------------------------

 new debian package, version 2.0.
 size 11874 bytes: control archive=710 bytes.
     669 bytes,    17 lines      control              
     278 bytes,     3 lines      md5sums              
 Package: groonga-token-filter-stem
 Source: groonga
 Version: 6.1.5-1+deb9u1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 40
 Depends: libc6 (>= 2.4), libgroonga0 (= 6.1.5-1+deb9u1), libstemmer0d (>= 0+svn527)
 Section: libs
 Priority: optional
 Homepage: http://groonga.org/
 Description: Stemming token filter for Groonga
  Groonga is an open-source fulltext search engine and column store.
  It lets you write high-performance applications that requires fulltext search.
  .
  This package provides TokenFilterStem token filter that stem each token.
  The token filter uses libstemmer that uses stemming algorithm written
  by Snowball.

drwxr-xr-x root/root         0 2019-05-07 13:33 ./
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/
-rw-r--r-- root/root      9516 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stem.so
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/groonga-token-filter-stem/
-rw-r--r-- root/root      3633 2019-05-07 13:33 ./usr/share/doc/groonga-token-filter-stem/changelog.Debian.gz
-rw-r--r-- root/root     14825 2019-05-07 13:33 ./usr/share/doc/groonga-token-filter-stem/copyright


groonga-tokenizer-mecab-dbgsym_6.1.5-1+deb9u1_armhf.deb
-------------------------------------------------------

 new debian package, version 2.0.
 size 13832 bytes: control archive=468 bytes.
     424 bytes,    13 lines      control              
     106 bytes,     1 lines      md5sums              
 Package: groonga-tokenizer-mecab-dbgsym
 Source: groonga
 Version: 6.1.5-1+deb9u1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 27
 Depends: groonga-tokenizer-mecab (= 6.1.5-1+deb9u1)
 Section: debug
 Priority: extra
 Homepage: http://groonga.org/
 Description: Debug symbols for groonga-tokenizer-mecab
 Build-Ids: d08cd61e4b982ffbcdc011efd5b479909682cb72

drwxr-xr-x root/root         0 2019-05-07 13:33 ./
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/d0/
-rw-r--r-- root/root     17356 2019-05-07 13:33 ./usr/lib/debug/.build-id/d0/8cd61e4b982ffbcdc011efd5b479909682cb72.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/
lrwxrwxrwx root/root         0 2019-05-07 13:33 ./usr/share/doc/groonga-tokenizer-mecab-dbgsym -> groonga-tokenizer-mecab


groonga-tokenizer-mecab_6.1.5-1+deb9u1_armhf.deb
------------------------------------------------

 new debian package, version 2.0.
 size 13438 bytes: control archive=726 bytes.
     663 bytes,    17 lines      control              
     358 bytes,     4 lines      md5sums              
 Package: groonga-tokenizer-mecab
 Source: groonga
 Version: 6.1.5-1+deb9u1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 47
 Depends: libc6 (>= 2.4), libgroonga0 (= 6.1.5-1+deb9u1), libmecab2, mecab-naist-jdic | mecab-jumandic-utf8
 Breaks: libgroonga-tokenizer-mecab (<< 1.2.0-1)
 Replaces: libgroonga-tokenizer-mecab (<< 1.2.0-1)
 Section: libs
 Priority: optional
 Homepage: http://groonga.org/
 Description: MeCab tokenizer for Groonga
  Groonga is an open-source fulltext search engine and column store.
  It lets you write high-performance applications that requires fulltext search.
  .
  This package provides MeCab tokenizer.

drwxr-xr-x root/root         0 2019-05-07 13:33 ./
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers/
-rw-r--r-- root/root     13620 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers/mecab.so
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/groonga-tokenizer-mecab/
-rw-r--r-- root/root      3633 2019-05-07 13:33 ./usr/share/doc/groonga-tokenizer-mecab/changelog.Debian.gz
-rw-r--r-- root/root     14825 2019-05-07 13:33 ./usr/share/doc/groonga-tokenizer-mecab/copyright
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/lintian/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       359 2019-03-29 14:10 ./usr/share/lintian/overrides/groonga-tokenizer-mecab


groonga_6.1.5-1+deb9u1_armhf.deb
--------------------------------

 new debian package, version 2.0.
 size 8682 bytes: control archive=577 bytes.
     597 bytes,    14 lines      control              
     142 bytes,     2 lines      md5sums              
 Package: groonga
 Version: 6.1.5-1+deb9u1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 25
 Depends: groonga-bin (= 6.1.5-1+deb9u1), groonga-plugin-suggest (= 6.1.5-1+deb9u1), groonga-doc (= 6.1.5-1+deb9u1)
 Section: database
 Priority: optional
 Homepage: http://groonga.org/
 Description: Fulltext search engine (metapackage for library use)
  Groonga is an open-source fulltext search engine and column store.
  It lets you write high-performance applications that requires fulltext search.
  .
  This package depends all Groonga related package for library use.

drwxr-xr-x root/root         0 2019-05-07 13:33 ./
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/groonga/
-rw-r--r-- root/root      3633 2019-05-07 13:33 ./usr/share/doc/groonga/changelog.Debian.gz
-rw-r--r-- root/root     14825 2019-05-07 13:33 ./usr/share/doc/groonga/copyright


libgroonga-dev_6.1.5-1+deb9u1_armhf.deb
---------------------------------------

 new debian package, version 2.0.
 size 32548 bytes: control archive=1740 bytes.
     632 bytes,    18 lines      control              
    3029 bytes,    42 lines      md5sums              
 Package: libgroonga-dev
 Source: groonga
 Version: 6.1.5-1+deb9u1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 228
 Depends: pkg-config, libgroonga0 (= 6.1.5-1+deb9u1)
 Breaks: libgroonga (<< 1.2.0-1)
 Replaces: libgroonga (<< 1.2.0-1)
 Section: libdevel
 Priority: optional
 Multi-Arch: same
 Homepage: http://groonga.org/
 Description: Development files to use Groonga as a library
  Groonga is an open-source fulltext search engine and column store.
  It lets you write high-performance applications that requires fulltext search.
  .
  This package provides header files to use Groonga as a library.

drwxr-xr-x root/root         0 2019-05-07 13:33 ./
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/include/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/include/groonga/
-rw-r--r-- root/root      1638 2019-05-07 13:33 ./usr/include/groonga/groonga.h
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/include/groonga/groonga/
-rw-r--r-- root/root      1160 2019-05-07 13:33 ./usr/include/groonga/groonga/accessor.h
-rw-r--r-- root/root      3972 2019-05-07 13:33 ./usr/include/groonga/groonga/array.h
-rw-r--r-- root/root       928 2019-05-07 13:33 ./usr/include/groonga/groonga/column.h
-rw-r--r-- root/root      3496 2019-05-07 13:33 ./usr/include/groonga/groonga/command.h
-rw-r--r-- root/root      2632 2019-05-07 13:33 ./usr/include/groonga/groonga/config.h
-rw-r--r-- root/root      4250 2019-05-07 13:33 ./usr/include/groonga/groonga/dat.h
-rw-r--r-- root/root      2821 2019-05-07 13:33 ./usr/include/groonga/groonga/db.h
-rw-r--r-- root/root      1217 2019-05-07 13:33 ./usr/include/groonga/groonga/dump.h
-rw-r--r-- root/root       894 2019-05-07 13:33 ./usr/include/groonga/groonga/error.h
-rw-r--r-- root/root      5645 2019-05-07 13:33 ./usr/include/groonga/groonga/expr.h
-rw-r--r-- root/root      1270 2019-05-07 13:33 ./usr/include/groonga/groonga/file_reader.h
-rw-r--r-- root/root      1207 2019-05-07 13:33 ./usr/include/groonga/groonga/geo.h
-rw-r--r-- root/root     62481 2019-05-07 13:33 ./usr/include/groonga/groonga/groonga.h
-rw-r--r-- root/root      4396 2019-05-07 13:33 ./usr/include/groonga/groonga/hash.h
-rw-r--r-- root/root      1004 2019-05-07 13:33 ./usr/include/groonga/groonga/id.h
-rw-r--r-- root/root      2727 2019-05-07 13:33 ./usr/include/groonga/groonga/ii.h
-rw-r--r-- root/root       908 2019-05-07 13:33 ./usr/include/groonga/groonga/nfkc.h
-rw-r--r-- root/root      2125 2019-05-07 13:33 ./usr/include/groonga/groonga/normalizer.h
-rw-r--r-- root/root      3071 2019-05-07 13:33 ./usr/include/groonga/groonga/obj.h
-rw-r--r-- root/root      2109 2019-05-07 13:33 ./usr/include/groonga/groonga/operator.h
-rw-r--r-- root/root      5130 2019-05-07 13:33 ./usr/include/groonga/groonga/output.h
-rw-r--r-- root/root      4714 2019-05-07 13:33 ./usr/include/groonga/groonga/pat.h
-rw-r--r-- root/root      8669 2019-05-07 13:33 ./usr/include/groonga/groonga/plugin.h
-rw-r--r-- root/root      6377 2019-05-07 13:33 ./usr/include/groonga/groonga/portability.h
-rw-r--r-- root/root      1420 2019-05-07 13:33 ./usr/include/groonga/groonga/request_canceler.h
-rw-r--r-- root/root      1819 2019-05-07 13:33 ./usr/include/groonga/groonga/request_timer.h
-rw-r--r-- root/root      3842 2019-05-07 13:33 ./usr/include/groonga/groonga/scorer.h
-rw-r--r-- root/root      9893 2019-05-07 13:33 ./usr/include/groonga/groonga/table.h
-rw-r--r-- root/root      1380 2019-05-07 13:33 ./usr/include/groonga/groonga/thread.h
-rw-r--r-- root/root      2160 2019-05-07 13:33 ./usr/include/groonga/groonga/time.h
-rw-r--r-- root/root      3728 2019-05-07 13:33 ./usr/include/groonga/groonga/token.h
-rw-r--r-- root/root      2544 2019-05-07 13:33 ./usr/include/groonga/groonga/token_filter.h
-rw-r--r-- root/root     10279 2019-05-07 13:33 ./usr/include/groonga/groonga/tokenizer.h
-rw-r--r-- root/root      1477 2019-05-07 13:33 ./usr/include/groonga/groonga/type.h
-rw-r--r-- root/root      1499 2019-05-07 13:33 ./usr/include/groonga/groonga/util.h
-rw-r--r-- root/root      2511 2019-05-07 13:33 ./usr/include/groonga/groonga/window_function.h
-rw-r--r-- root/root       930 2019-05-07 13:33 ./usr/include/groonga/groonga/windows.h
-rw-r--r-- root/root       984 2019-05-07 13:33 ./usr/include/groonga/groonga/windows_event_logger.h
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/
lrwxrwxrwx root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/libgroonga.so -> libgroonga.so.0.0.0
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/pkgconfig/
-rw-r--r-- root/root       589 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/pkgconfig/groonga.pc
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/libgroonga-dev/
-rw-r--r-- root/root      3633 2019-05-07 13:33 ./usr/share/doc/libgroonga-dev/changelog.Debian.gz
-rw-r--r-- root/root     14825 2019-05-07 13:33 ./usr/share/doc/libgroonga-dev/copyright


libgroonga0-dbgsym_6.1.5-1+deb9u1_armhf.deb
-------------------------------------------

 new debian package, version 2.0.
 size 3773558 bytes: control archive=810 bytes.
     653 bytes,    14 lines      control              
     742 bytes,     7 lines      md5sums              
 Package: libgroonga0-dbgsym
 Source: groonga
 Version: 6.1.5-1+deb9u1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 4361
 Depends: libgroonga0 (= 6.1.5-1+deb9u1)
 Section: debug
 Priority: extra
 Multi-Arch: same
 Homepage: http://groonga.org/
 Description: Debug symbols for libgroonga0
 Build-Ids: 06e5a8a20760c4c4e072df35cd71a47136c59afb 3679deba0c6c135414afc3a472b91f482e18eccf 4b4bf964de2b2493d07706788700b9ee2f93b79f 787a2cfcc2c6258faf96ebc05a5aa6194988ae1f f2074d63d3538699e9938ce00d1adeb0c1e4e69b fdb21a61ed5eb15ff474c79da4a3e65002ab37e0 fe9a25fa9cef22e2f852139927793233e7f80425

drwxr-xr-x root/root         0 2019-05-07 13:33 ./
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/06/
-rw-r--r-- root/root     11248 2019-05-07 13:33 ./usr/lib/debug/.build-id/06/e5a8a20760c4c4e072df35cd71a47136c59afb.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/36/
-rw-r--r-- root/root     10924 2019-05-07 13:33 ./usr/lib/debug/.build-id/36/79deba0c6c135414afc3a472b91f482e18eccf.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/4b/
-rw-r--r-- root/root     12440 2019-05-07 13:33 ./usr/lib/debug/.build-id/4b/4bf964de2b2493d07706788700b9ee2f93b79f.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/78/
-rw-r--r-- root/root   4378604 2019-05-07 13:33 ./usr/lib/debug/.build-id/78/7a2cfcc2c6258faf96ebc05a5aa6194988ae1f.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/f2/
-rw-r--r-- root/root     10904 2019-05-07 13:33 ./usr/lib/debug/.build-id/f2/074d63d3538699e9938ce00d1adeb0c1e4e69b.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/fd/
-rw-r--r-- root/root     11080 2019-05-07 13:33 ./usr/lib/debug/.build-id/fd/b21a61ed5eb15ff474c79da4a3e65002ab37e0.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/debug/.build-id/fe/
-rw-r--r-- root/root     11676 2019-05-07 13:33 ./usr/lib/debug/.build-id/fe/9a25fa9cef22e2f852139927793233e7f80425.debug
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/
lrwxrwxrwx root/root         0 2019-05-07 13:33 ./usr/share/doc/libgroonga0-dbgsym -> libgroonga0


libgroonga0_6.1.5-1+deb9u1_armhf.deb
------------------------------------

 new debian package, version 2.0.
 size 1274292 bytes: control archive=2919 bytes.
      26 bytes,     1 lines      conffiles            
     706 bytes,    18 lines      control              
    7163 bytes,    71 lines      md5sums              
      25 bytes,     1 lines      shlibs               
      60 bytes,     2 lines      triggers             
 Package: libgroonga0
 Source: groonga
 Version: 6.1.5-1+deb9u1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 5907
 Depends: libatomic1 (>= 4.8), libc6 (>= 2.17), libgcc1 (>= 1:3.5), liblz4-1 (>= 0.0~r114), libmsgpackc2 (>= 0.5.1), libstdc++6 (>= 5), libzstd1, zlib1g (>= 1:1.2.0), libjemalloc1
 Breaks: libgroonga (<< 1.2.0-1)
 Replaces: libgroonga (<< 1.2.0-1)
 Section: libs
 Priority: optional
 Multi-Arch: same
 Homepage: http://groonga.org/
 Description: Library files for Groonga
  Groonga is an open-source fulltext search engine and column store.
  It lets you write high-performance applications that requires fulltext search.
  .
  This package provides library files.

drwxr-xr-x root/root         0 2019-05-07 13:33 ./
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./etc/groonga/
-rw-r--r-- root/root       101 2019-05-07 13:33 ./etc/groonga/synonyms.tsv
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/
-rw-r--r-- root/root      9568 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/number.so
-rw-r--r-- root/root      9516 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/string.so
-rw-r--r-- root/root      9516 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/time.so
-rw-r--r-- root/root      9516 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/vector.so
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders/
-rw-r--r-- root/root      9516 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders/tsv.so
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/ruby/
-rw-r--r-- root/root       896 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/ruby/eval.rb
-rw-r--r-- root/root       337 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding.rb
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/
-rw-r--r-- root/root      5384 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_count.rb
-rw-r--r-- root/root      8430 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_enumerator.rb
-rw-r--r-- root/root      1032 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_parameters.rb
-rw-r--r-- root/root     22545 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_range_filter.rb
-rw-r--r-- root/root     20540 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_select.rb
-rw-r--r-- root/root       795 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_shard_list.rb
-rw-r--r-- root/root     10471 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_table_remove.rb
-rw-r--r-- root/root       165 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/parameters.rb
-rw-r--r-- root/root      2290 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/range_expression_builder.rb
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/
-rw-r--r-- root/root      5420 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stop_word.so
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/
-rw-r--r-- root/root        64 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/accessor.rb
-rw-r--r-- root/root       740 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/backtrace_entry.rb
-rw-r--r-- root/root      1333 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command.rb
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line/
-rw-r--r-- root/root      9991 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line/grndb.rb
-rw-r--r-- root/root      3525 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line_parser.rb
-rw-r--r-- root/root      1799 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context.rb
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context/
-rw-r--r-- root/root       549 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context/error_level.rb
-rw-r--r-- root/root      7760 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context/rc.rb
-rw-r--r-- root/root      1567 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/database.rb
-rw-r--r-- root/root       189 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/error.rb
-rw-r--r-- root/root       344 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/eval_context.rb
-rw-r--r-- root/root      1665 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression.rb
-rw-r--r-- root/root       341 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_rewriter.rb
-rw-r--r-- root/root      1172 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_rewriters.rb
-rw-r--r-- root/root      5453 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_size_estimator.rb
-rw-r--r-- root/root       341 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree.rb
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/
-rw-r--r-- root/root       266 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/accessor.rb
-rw-r--r-- root/root      1815 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/binary_operation.rb
-rw-r--r-- root/root       393 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/constant.rb
-rw-r--r-- root/root      1413 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/function_call.rb
-rw-r--r-- root/root       269 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/index_column.rb
-rw-r--r-- root/root       759 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/logical_operation.rb
-rw-r--r-- root/root       265 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/options.rb
-rw-r--r-- root/root       314 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/procedure.rb
-rw-r--r-- root/root       332 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/variable.rb
-rw-r--r-- root/root      3002 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree_builder.rb
-rw-r--r-- root/root        71 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/fixed_size_column.rb
-rw-r--r-- root/root       203 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/id.rb
-rw-r--r-- root/root      1203 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/index_column.rb
-rw-r--r-- root/root       310 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/index_cursor.rb
-rw-r--r-- root/root       192 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/index_info.rb
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize/
-rw-r--r-- root/root       404 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize/post.rb
-rw-r--r-- root/root        46 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize/pre.rb
-rw-r--r-- root/root       971 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger.rb
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger/
-rw-r--r-- root/root       687 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger/level.rb
-rw-r--r-- root/root       153 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/object.rb
-rw-r--r-- root/root       392 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/operator.rb
-rw-r--r-- root/root       255 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/plugin_loader.rb
-rw-r--r-- root/root       215 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger.rb
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger/
-rw-r--r-- root/root       941 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger/flag.rb
-rw-r--r-- root/root       741 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/record.rb
-rw-r--r-- root/root      1486 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/require.rb
-rw-r--r-- root/root      1014 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info.rb
-rw-r--r-- root/root     11960 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info_builder.rb
-rw-r--r-- root/root      9439 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info_data.rb
-rw-r--r-- root/root       362 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info_search_index.rb
-rw-r--r-- root/root      2782 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/table.rb
-rw-r--r-- root/root       462 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/table_cursor.rb
-rw-r--r-- root/root        74 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/variable_size_column.rb
-rw-r--r-- root/root       323 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/writer.rb
lrwxrwxrwx root/root         0 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/libgroonga.so.0 -> libgroonga.so.0.0.0
-rw-r--r-- root/root   5747404 2019-05-07 13:33 ./usr/lib/arm-linux-gnueabihf/libgroonga.so.0.0.0
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/doc/libgroonga0/
-rw-r--r-- root/root      3633 2019-05-07 13:33 ./usr/share/doc/libgroonga0/changelog.Debian.gz
-rw-r--r-- root/root     14825 2019-05-07 13:33 ./usr/share/doc/libgroonga0/copyright
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/lintian/
drwxr-xr-x root/root         0 2019-05-07 13:33 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       382 2019-03-29 14:10 ./usr/share/lintian/overrides/libgroonga0


+------------------------------------------------------------------------------+
| Post Build                                                                   |
+------------------------------------------------------------------------------+


+------------------------------------------------------------------------------+
| Cleanup                                                                      |
+------------------------------------------------------------------------------+

Purging /<<BUILDDIR>>
Not cleaning session: cloned chroot in use

+------------------------------------------------------------------------------+
| Summary                                                                      |
+------------------------------------------------------------------------------+

Build Architecture: armhf
Build-Space: 241096
Build-Time: 2106
Distribution: stretch-staging
Host Architecture: armhf
Install-Time: 410
Job: groonga_6.1.5-1+deb9u1
Machine Architecture: armhf
Package: groonga
Package-Time: 2585
Source-Version: 6.1.5-1+deb9u1
Space: 241096
Status: successful
Version: 6.1.5-1+deb9u1
--------------------------------------------------------------------------------
Finished at 2019-09-07T18:52:32Z
Build needed 00:43:05, 241096k disc space